Loading src/html.cpp +17 −17 Original line number Diff line number Diff line Loading @@ -774,22 +774,12 @@ libhtmlpp::HtmlElement & libhtmlpp::HtmlElement::operator=(const libhtmlpp::Html } void libhtmlpp::HtmlElement::remove(libhtmlpp::Element* el){ Element *cur=_firstElement; Element *cur=this; std::stack<Element*> parents; DELETEELEMENT: while(cur){ if(cur->_firstElement==el) cur->_firstElement=el->_nextElement; if(cur->getType()==HtmlEl){ if(((HtmlElement*)cur)->_childElement){ parents.push(cur); cur=((HtmlElement*)cur)->_childElement; } } if(cur==el){ if(cur->_prevElement) cur->_prevElement->_nextElement=cur->_nextElement; Loading @@ -798,8 +788,17 @@ DELETEELEMENT: cur->_nextElement=nullptr; cur->_prevElement=nullptr; cur->_firstElement=nullptr; delete cur; return; delete cur;; } if(cur->_firstElement==el) cur->_firstElement=el->_nextElement; if(cur->getType()==HtmlEl){ if(((HtmlElement*)cur)->_childElement){ parents.push(cur); cur=((HtmlElement*)cur)->_childElement; } } Element *next=cur->_nextElement; Loading Loading @@ -1031,14 +1030,11 @@ libhtmlpp::Element::~Element(){ }; void libhtmlpp::Element::remove(libhtmlpp::Element* el){ Element *curel=_firstElement; Element *curel=this; while(curel){ Element *next=curel->_nextElement; if(_firstElement==el) curel->_firstElement=_firstElement->_nextElement; if(curel==el){ curel->_firstElement=nullptr; Loading @@ -1051,6 +1047,10 @@ void libhtmlpp::Element::remove(libhtmlpp::Element* el){ curel->_nextElement=nullptr; delete curel; } if(_firstElement==el) curel->_firstElement=_firstElement->_nextElement; curel=next; } } Loading Loading
src/html.cpp +17 −17 Original line number Diff line number Diff line Loading @@ -774,22 +774,12 @@ libhtmlpp::HtmlElement & libhtmlpp::HtmlElement::operator=(const libhtmlpp::Html } void libhtmlpp::HtmlElement::remove(libhtmlpp::Element* el){ Element *cur=_firstElement; Element *cur=this; std::stack<Element*> parents; DELETEELEMENT: while(cur){ if(cur->_firstElement==el) cur->_firstElement=el->_nextElement; if(cur->getType()==HtmlEl){ if(((HtmlElement*)cur)->_childElement){ parents.push(cur); cur=((HtmlElement*)cur)->_childElement; } } if(cur==el){ if(cur->_prevElement) cur->_prevElement->_nextElement=cur->_nextElement; Loading @@ -798,8 +788,17 @@ DELETEELEMENT: cur->_nextElement=nullptr; cur->_prevElement=nullptr; cur->_firstElement=nullptr; delete cur; return; delete cur;; } if(cur->_firstElement==el) cur->_firstElement=el->_nextElement; if(cur->getType()==HtmlEl){ if(((HtmlElement*)cur)->_childElement){ parents.push(cur); cur=((HtmlElement*)cur)->_childElement; } } Element *next=cur->_nextElement; Loading Loading @@ -1031,14 +1030,11 @@ libhtmlpp::Element::~Element(){ }; void libhtmlpp::Element::remove(libhtmlpp::Element* el){ Element *curel=_firstElement; Element *curel=this; while(curel){ Element *next=curel->_nextElement; if(_firstElement==el) curel->_firstElement=_firstElement->_nextElement; if(curel==el){ curel->_firstElement=nullptr; Loading @@ -1051,6 +1047,10 @@ void libhtmlpp::Element::remove(libhtmlpp::Element* el){ curel->_nextElement=nullptr; delete curel; } if(_firstElement==el) curel->_firstElement=_firstElement->_nextElement; curel=next; } } Loading