VirtualBox

Ignore:
Timestamp:
Aug 24, 2009 8:33:02 AM (15 years ago)
Author:
vboxsync
Message:

libxml2: fixes from upstream

File:
1 edited

Legend:

Unmodified
Added
Removed
  • trunk/src/libs/libxml2-2.6.30/parser.c

    r16778 r22405  
    47354735            xmlFatalErrMsg(ctxt, XML_ERR_NAME_REQUIRED,
    47364736                           "Name expected in NOTATION declaration\n");
    4737             return(ret);
     4737            xmlFreeEnumeration(ret);
     4738            return(NULL);
    47384739        }
    47394740        cur = xmlCreateEnumeration(name);
    4740         if (cur == NULL) return(ret);
     4741        if (cur == NULL) {
     4742            xmlFreeEnumeration(ret);
     4743            return(NULL);
     4744        }
    47414745        if (last == NULL) ret = last = cur;
    47424746        else {
     
    47484752    if (RAW != ')') {
    47494753        xmlFatalErr(ctxt, XML_ERR_NOTATION_NOT_FINISHED, NULL);
    4750         if ((last != NULL) && (last != ret))
    4751             xmlFreeEnumeration(last);
    4752         return(ret);
     4754        xmlFreeEnumeration(ret);
     4755        return(NULL);
    47534756    }
    47544757    NEXT;
     
    47914794        cur = xmlCreateEnumeration(name);
    47924795        xmlFree(name);
    4793         if (cur == NULL) return(ret);
     4796        if (cur == NULL) {
     4797            xmlFreeEnumeration(ret);
     4798            return(NULL);
     4799        }
    47944800        if (last == NULL) ret = last = cur;
    47954801        else {
     
    51895195    xmlChar type = 0;
    51905196
     5197    if (ctxt->depth > 128) {
     5198        xmlFatalErrMsgInt(ctxt, XML_ERR_ELEMCONTENT_NOT_FINISHED,
     5199                "xmlParseElementChildrenContentDecl : depth %d too deep\n",
     5200                          ctxt->depth);
     5201        return(NULL);
     5202    }
     5203
    51915204    SKIP_BLANKS;
    51925205    GROW;
     
    51975210        NEXT;
    51985211        SKIP_BLANKS;
     5212        ctxt->depth++;
    51995213        cur = ret = xmlParseElementChildrenContentDecl(ctxt, inputid);
     5214        ctxt->depth--;
    52005215        SKIP_BLANKS;
    52015216        GROW;
     
    53275342            NEXT;
    53285343            SKIP_BLANKS;
     5344            ctxt->depth++;
    53295345            last = xmlParseElementChildrenContentDecl(ctxt, inputid);
     5346            ctxt->depth--;
    53305347            SKIP_BLANKS;
    53315348        } else {
Note: See TracChangeset for help on using the changeset viewer.

© 2024 Oracle Support Privacy / Do Not Sell My Info Terms of Use Trademark Policy Automated Access Etiquette