Loading src/html.cpp +7 −7 Original line number Original line Diff line number Diff line Loading @@ -379,11 +379,11 @@ libhtmlpp::Element *libhtmlpp::HtmlString::_buildTree() { for(size_t ii=0; ii<_Data.size(); ++ii){ for(size_t ii=0; ii<_Data.size(); ++ii){ BUILDTREE_STARTLOOP: BUILDTREE_STARTLOOP: if(_Data[ii]==HTMLTAG_OPEN){ if(_Data[ii]==HTMLTAG_OPEN){ if(std::equal(_Data.begin()+ii,_Data.begin()+(ii+4), "<!--")){ if(std::equal(_Data.begin()+ii,_Data.begin()+(ii+3), "<!--")){ ii+=4; ii+=3; size_t start=ii; size_t start=ii; while(ii<_Data.size()){ while(ii<_Data.size()){ if(std::equal(_Data.begin()+ii,_Data.begin()+(ii+3),"-->")) { if(std::equal(_Data.begin()+ii,_Data.begin()+(ii+2),"-->")) { addelement(&firstEl,&lastEl,new CommentElement()); addelement(&firstEl,&lastEl,new CommentElement()); std::copy(_Data.begin()+start,_Data.begin()+ii, std::copy(_Data.begin()+start,_Data.begin()+ii, std::back_inserter(((CommentElement*)lastEl->element)->_Comment)); std::back_inserter(((CommentElement*)lastEl->element)->_Comment)); Loading Loading @@ -424,10 +424,10 @@ BUILDTREE_STARTLOOP: } } ++ii; ++ii; } } }else if(std::equal(_Data.begin()+ii,_Data.begin()+(ii+4),"<svg")){ }else if(std::equal(_Data.begin()+ii,_Data.begin()+(ii+3),"<svg")){ size_t start=ii; size_t start=ii; ii+=7; ii+=3; while(ii<_Data.size()){ while(ii<_Data.size()){ if(_Data[ii]==HTMLTAG_CLOSE) { if(_Data[ii]==HTMLTAG_CLOSE) { Loading @@ -447,11 +447,11 @@ BUILDTREE_STARTLOOP: size_t close=++ii; size_t close=++ii; while(ii<_Data.size()){ while(ii<_Data.size()){ if( std::equal(_Data.begin()+ii,_Data.begin()+(ii+5),"</svg")) { if( std::equal(_Data.begin()+ii,_Data.begin()+(ii+4),"</svg")) { std::copy(_Data.begin()+close,_Data.begin()+ii, std::copy(_Data.begin()+close,_Data.begin()+ii, std::back_inserter(((SvgElement*)lastEl->element)->_Svg)); std::back_inserter(((SvgElement*)lastEl->element)->_Svg)); ii+=8; ii+=4; break; break; } } ++ii; ++ii; Loading Loading
src/html.cpp +7 −7 Original line number Original line Diff line number Diff line Loading @@ -379,11 +379,11 @@ libhtmlpp::Element *libhtmlpp::HtmlString::_buildTree() { for(size_t ii=0; ii<_Data.size(); ++ii){ for(size_t ii=0; ii<_Data.size(); ++ii){ BUILDTREE_STARTLOOP: BUILDTREE_STARTLOOP: if(_Data[ii]==HTMLTAG_OPEN){ if(_Data[ii]==HTMLTAG_OPEN){ if(std::equal(_Data.begin()+ii,_Data.begin()+(ii+4), "<!--")){ if(std::equal(_Data.begin()+ii,_Data.begin()+(ii+3), "<!--")){ ii+=4; ii+=3; size_t start=ii; size_t start=ii; while(ii<_Data.size()){ while(ii<_Data.size()){ if(std::equal(_Data.begin()+ii,_Data.begin()+(ii+3),"-->")) { if(std::equal(_Data.begin()+ii,_Data.begin()+(ii+2),"-->")) { addelement(&firstEl,&lastEl,new CommentElement()); addelement(&firstEl,&lastEl,new CommentElement()); std::copy(_Data.begin()+start,_Data.begin()+ii, std::copy(_Data.begin()+start,_Data.begin()+ii, std::back_inserter(((CommentElement*)lastEl->element)->_Comment)); std::back_inserter(((CommentElement*)lastEl->element)->_Comment)); Loading Loading @@ -424,10 +424,10 @@ BUILDTREE_STARTLOOP: } } ++ii; ++ii; } } }else if(std::equal(_Data.begin()+ii,_Data.begin()+(ii+4),"<svg")){ }else if(std::equal(_Data.begin()+ii,_Data.begin()+(ii+3),"<svg")){ size_t start=ii; size_t start=ii; ii+=7; ii+=3; while(ii<_Data.size()){ while(ii<_Data.size()){ if(_Data[ii]==HTMLTAG_CLOSE) { if(_Data[ii]==HTMLTAG_CLOSE) { Loading @@ -447,11 +447,11 @@ BUILDTREE_STARTLOOP: size_t close=++ii; size_t close=++ii; while(ii<_Data.size()){ while(ii<_Data.size()){ if( std::equal(_Data.begin()+ii,_Data.begin()+(ii+5),"</svg")) { if( std::equal(_Data.begin()+ii,_Data.begin()+(ii+4),"</svg")) { std::copy(_Data.begin()+close,_Data.begin()+ii, std::copy(_Data.begin()+close,_Data.begin()+ii, std::back_inserter(((SvgElement*)lastEl->element)->_Svg)); std::back_inserter(((SvgElement*)lastEl->element)->_Svg)); ii+=8; ii+=4; break; break; } } ++ii; ++ii; Loading