Loading src/html.cpp +10 −26 Changes for src/html.cpp: 10 added lines, 26 removed lines. Original line number Diff line number Diff line Loading @@ -198,30 +198,15 @@ libhtmlpp::HtmlElement* libhtmlpp::HtmlString::_buildTree(ssize_t& pos) { lastEl = lastEl->nextel; } lastEl->data = _Data.substr(_HTable[i][0]+1,(_HTable[i][2] - _HTable[i][0])-1); if (lastEl->data[0] == '/') lastEl->terminator = true; lastEl->spos = _HTable[i][0]+1; lastEl->epos = _HTable[i][2]-1; _serialelize(lastEl->data, &lastEl->elhtml); if ((i + 1) < _HTableSize && _HTable[i + 1][0] - _HTable[i][2] > 0) { lastEl->nextel = new DocElements; lastEl->nextel->prevel = lastEl; lastEl = lastEl->nextel; lastEl->terminator = false; lastEl->data = _Data.substr(lastEl->spos,(lastEl->epos - lastEl->spos)+1); lastEl->spos = _HTable[i][2]+1; lastEl->epos = _HTable[i+1][0]-1; if (_HTable[i][1] != -1) lastEl->terminator = true; lastEl->elhtml = new HtmlElement(nullptr); lastEl->elhtml->_Text = _Data.substr(lastEl->spos, lastEl->epos-lastEl->spos); } _serialelize(lastEl->data, &lastEl->elhtml); } Loading Loading @@ -253,8 +238,7 @@ libhtmlpp::HtmlElement* libhtmlpp::HtmlString::_buildTree(ssize_t& pos) { DocElements* endcurel = nullptr; while (endcurel) { if (!curel->terminator && curel->data.substr(1,curel->data.length()-1) == parent->data) { if (!curel->terminator) { endcurel = curel; } curel = curel->nextel; Loading @@ -262,8 +246,7 @@ libhtmlpp::HtmlElement* libhtmlpp::HtmlString::_buildTree(ssize_t& pos) { if (endcurel) parent->elhtml->_nextElement = endcurel->elhtml; else if(curel->nextel) parent->elhtml->_nextElement = curel->nextel->elhtml; parent->elhtml->_nextElement = nullptr; break; } } Loading Loading @@ -312,7 +295,7 @@ void libhtmlpp::HtmlString::_serialelize(std::string in, libhtmlpp::HtmlElement int startpos = -1; std::string key; int vst=-1; while (i <= in.length()) { while (i < in.length()) { switch (in[i]) { case ' ': { break; Loading Loading @@ -397,12 +380,14 @@ void libhtmlpp::HtmlString::_parseTree(){ bool open=false; size_t ip=0; for(size_t ii=0; ii<_Data.size(); ++ii){ for(size_t ii=0; ii<_Data.length(); ++ii){ switch(_Data[ii]){ case HTMLTAG_OPEN: if (_Data.substr(ii, 4) != "<!--") { open = true; _HTable[ip][0] = ii; }else{ ii+=4; } break; case HTMLTAG_TERMINATE: Loading Loading @@ -549,7 +534,6 @@ void libhtmlpp::HtmlElement::_print(HtmlElement* el, HtmlElement* parent,std::st const char* libhtmlpp::HtmlElement::printHtmlElement() { _Cstr.clear(); _print(this,nullptr,_Cstr); return _Cstr.c_str(); } Loading test/htmlfiles/right.html +1 −1 Changes for test/htmlfiles/right.html: 1 added line, 1 removed line. Original line number Diff line number Diff line Loading @@ -2,7 +2,7 @@ <html lang="en"> <head> <meta charset="utf-8"> <title >title </title > <title>test</title> <link rel="stylesheet" href="style.css"> <script src="script.js"></script> </head> Loading Loading
src/html.cpp +10 −26 Changes for src/html.cpp: 10 added lines, 26 removed lines. Original line number Diff line number Diff line Loading @@ -198,30 +198,15 @@ libhtmlpp::HtmlElement* libhtmlpp::HtmlString::_buildTree(ssize_t& pos) { lastEl = lastEl->nextel; } lastEl->data = _Data.substr(_HTable[i][0]+1,(_HTable[i][2] - _HTable[i][0])-1); if (lastEl->data[0] == '/') lastEl->terminator = true; lastEl->spos = _HTable[i][0]+1; lastEl->epos = _HTable[i][2]-1; _serialelize(lastEl->data, &lastEl->elhtml); if ((i + 1) < _HTableSize && _HTable[i + 1][0] - _HTable[i][2] > 0) { lastEl->nextel = new DocElements; lastEl->nextel->prevel = lastEl; lastEl = lastEl->nextel; lastEl->terminator = false; lastEl->data = _Data.substr(lastEl->spos,(lastEl->epos - lastEl->spos)+1); lastEl->spos = _HTable[i][2]+1; lastEl->epos = _HTable[i+1][0]-1; if (_HTable[i][1] != -1) lastEl->terminator = true; lastEl->elhtml = new HtmlElement(nullptr); lastEl->elhtml->_Text = _Data.substr(lastEl->spos, lastEl->epos-lastEl->spos); } _serialelize(lastEl->data, &lastEl->elhtml); } Loading Loading @@ -253,8 +238,7 @@ libhtmlpp::HtmlElement* libhtmlpp::HtmlString::_buildTree(ssize_t& pos) { DocElements* endcurel = nullptr; while (endcurel) { if (!curel->terminator && curel->data.substr(1,curel->data.length()-1) == parent->data) { if (!curel->terminator) { endcurel = curel; } curel = curel->nextel; Loading @@ -262,8 +246,7 @@ libhtmlpp::HtmlElement* libhtmlpp::HtmlString::_buildTree(ssize_t& pos) { if (endcurel) parent->elhtml->_nextElement = endcurel->elhtml; else if(curel->nextel) parent->elhtml->_nextElement = curel->nextel->elhtml; parent->elhtml->_nextElement = nullptr; break; } } Loading Loading @@ -312,7 +295,7 @@ void libhtmlpp::HtmlString::_serialelize(std::string in, libhtmlpp::HtmlElement int startpos = -1; std::string key; int vst=-1; while (i <= in.length()) { while (i < in.length()) { switch (in[i]) { case ' ': { break; Loading Loading @@ -397,12 +380,14 @@ void libhtmlpp::HtmlString::_parseTree(){ bool open=false; size_t ip=0; for(size_t ii=0; ii<_Data.size(); ++ii){ for(size_t ii=0; ii<_Data.length(); ++ii){ switch(_Data[ii]){ case HTMLTAG_OPEN: if (_Data.substr(ii, 4) != "<!--") { open = true; _HTable[ip][0] = ii; }else{ ii+=4; } break; case HTMLTAG_TERMINATE: Loading Loading @@ -549,7 +534,6 @@ void libhtmlpp::HtmlElement::_print(HtmlElement* el, HtmlElement* parent,std::st const char* libhtmlpp::HtmlElement::printHtmlElement() { _Cstr.clear(); _print(this,nullptr,_Cstr); return _Cstr.c_str(); } Loading
test/htmlfiles/right.html +1 −1 Changes for test/htmlfiles/right.html: 1 added line, 1 removed line. Original line number Diff line number Diff line Loading @@ -2,7 +2,7 @@ <html lang="en"> <head> <meta charset="utf-8"> <title >title </title > <title>test</title> <link rel="stylesheet" href="style.css"> <script src="script.js"></script> </head> Loading