Commit 65c3bb0c authored by jan.koester's avatar jan.koester
Browse files

fixed endtag search

parent 19328da8
Loading
Loading
Loading
Loading
+11 −1
Changes for src/html.cpp: 11 added lines, 1 removed line.
Original line number Diff line number Diff line
@@ -177,10 +177,20 @@ libhtmlpp::HtmlElement* libhtmlpp::HtmlString::parse() {

libhtmlpp::DocElements *libhtmlpp::HtmlString::_buildtreenode(DocElements* prev,libhtmlpp::DocElements* next,libhtmlpp::DocElements* start,libhtmlpp::DocElements* end){
    auto checkterminator = [end](DocElements *termel){
        for (DocElements* curcel=end; curcel!=termel; curcel=curcel->prevel) {
        int i=0;
        for (DocElements* curcel=termel->nextel; curcel!=end; curcel=curcel->nextel) {

            if (curcel->element->_Type==HtmlEl && !curcel->terminator &&
                ((HtmlElement*)curcel->element)->_TagName == ((HtmlElement*)termel->element)->_TagName) {
                ++i;
            }

            if (curcel->element->_Type==HtmlEl && curcel->terminator &&
                ((HtmlElement*)curcel->element)->_TagName == ((HtmlElement*)termel->element)->_TagName) {
                if(i==0)
                    return curcel;
                else
                    --i;
            }
        }
        return (DocElements*) nullptr;