Loading src/html.cpp +33 −2 Original line number Diff line number Diff line Loading @@ -879,12 +879,43 @@ NEWEL: childel.source=((libhtmlpp::HtmlElement*)src)->_childElement; cpylist.push(childel); } }else if(src->getType()==libhtmlpp::ScriptEL && dest->getType()== libhtmlpp::ScriptEL){ ((libhtmlpp::ScriptElement*)dest)->_TagName=(((libhtmlpp::ScriptElement*)src)->_TagName); for(libhtmlpp::ScriptElement::Attributes *cattr=((libhtmlpp::ScriptElement*)src)->_firstAttr; cattr; cattr=cattr->_nextAttr){ if(!cattr->_Value.empty()) ((libhtmlpp::ScriptElement*)dest)->setAttribute(cattr->_Key.data(),cattr->_Key.size(),cattr->_Value.data(),cattr->_Value.size()); else ((libhtmlpp::ScriptElement*)dest)->setAttribute(cattr->_Key.data(),cattr->_Key.size(),nullptr,0); } if(((libhtmlpp::ScriptElement*)src)->_childElement){ switch(((libhtmlpp::ScriptElement*)src)->_childElement->getType()){ case HtmlEl: ((libhtmlpp::ScriptElement*)dest)->_childElement= new HtmlElement; break; case TextEl: ((libhtmlpp::ScriptElement*)dest)->_childElement = new TextElement; break; case CommentEl: ((libhtmlpp::ScriptElement*)dest)->_childElement = new CommentElement; break; case ScriptEL: ((libhtmlpp::ScriptElement*)dest)->_childElement = new ScriptElement; break; default: HTMLException ex; ex[HTMLException::Critical] << "_copy: Unknown html element found !"; throw ex; } cpyel childel; childel.destin=((libhtmlpp::ScriptElement*)dest)->_childElement; childel.source=((libhtmlpp::ScriptElement*)src)->_childElement; cpylist.push(childel); } }else if(src->getType()==libhtmlpp::TextEl && dest->getType()== libhtmlpp::TextEl){ ((TextElement*)dest)->_Text=(((TextElement*)src)->_Text); }else if(src->getType()==libhtmlpp::CommentEl && dest->getType()== libhtmlpp::CommentEl){ ((CommentElement*)dest)->_Comment=(((CommentElement*)src)->_Comment); }else if(src->getType()==libhtmlpp::ScriptEL && dest->getType()== libhtmlpp::ScriptEL){ ((ScriptElement*)dest)->_Script=(((ScriptElement*)src)->_Script); } dest->_firstElement=firstdest; Loading Loading
src/html.cpp +33 −2 Original line number Diff line number Diff line Loading @@ -879,12 +879,43 @@ NEWEL: childel.source=((libhtmlpp::HtmlElement*)src)->_childElement; cpylist.push(childel); } }else if(src->getType()==libhtmlpp::ScriptEL && dest->getType()== libhtmlpp::ScriptEL){ ((libhtmlpp::ScriptElement*)dest)->_TagName=(((libhtmlpp::ScriptElement*)src)->_TagName); for(libhtmlpp::ScriptElement::Attributes *cattr=((libhtmlpp::ScriptElement*)src)->_firstAttr; cattr; cattr=cattr->_nextAttr){ if(!cattr->_Value.empty()) ((libhtmlpp::ScriptElement*)dest)->setAttribute(cattr->_Key.data(),cattr->_Key.size(),cattr->_Value.data(),cattr->_Value.size()); else ((libhtmlpp::ScriptElement*)dest)->setAttribute(cattr->_Key.data(),cattr->_Key.size(),nullptr,0); } if(((libhtmlpp::ScriptElement*)src)->_childElement){ switch(((libhtmlpp::ScriptElement*)src)->_childElement->getType()){ case HtmlEl: ((libhtmlpp::ScriptElement*)dest)->_childElement= new HtmlElement; break; case TextEl: ((libhtmlpp::ScriptElement*)dest)->_childElement = new TextElement; break; case CommentEl: ((libhtmlpp::ScriptElement*)dest)->_childElement = new CommentElement; break; case ScriptEL: ((libhtmlpp::ScriptElement*)dest)->_childElement = new ScriptElement; break; default: HTMLException ex; ex[HTMLException::Critical] << "_copy: Unknown html element found !"; throw ex; } cpyel childel; childel.destin=((libhtmlpp::ScriptElement*)dest)->_childElement; childel.source=((libhtmlpp::ScriptElement*)src)->_childElement; cpylist.push(childel); } }else if(src->getType()==libhtmlpp::TextEl && dest->getType()== libhtmlpp::TextEl){ ((TextElement*)dest)->_Text=(((TextElement*)src)->_Text); }else if(src->getType()==libhtmlpp::CommentEl && dest->getType()== libhtmlpp::CommentEl){ ((CommentElement*)dest)->_Comment=(((CommentElement*)src)->_Comment); }else if(src->getType()==libhtmlpp::ScriptEL && dest->getType()== libhtmlpp::ScriptEL){ ((ScriptElement*)dest)->_Script=(((ScriptElement*)src)->_Script); } dest->_firstElement=firstdest; Loading