[xml] libxml2 2.4.3, xmllint/catalogs bug



In message <20010823201535 T32662 redhat com>
          Daniel Veillard <veillard redhat com> wrote:

   Available as usual from ftp://xmlsoft.org/

 This release is mostly a way to get the code with XML Catalog support out,
it's otherwise mostly bugfixes (not that many were reported after 2.4.2) :
   - Implement XML Catalog Specification from August 6
     http://www.oasis-open.org/committees/entity/spec-2001-08-06.html
     doc at http://xmlsoft.org/catalog.html
   - New NaN and Infinity code from Bjorn , this should improve the
     portability problem of that code a lot
   - a number of small bugfixes

  I'm afraid I didn't give advance notice to Igor  and I did add new
API calls so one may have to expand the exported symbol table on Windows
MCS for a sucessful compilation.

I know the Catalog stuff is very new, but... libxml2.4.3 xmllint.c lines
around 977 :

--8<--------
#ifdef LIBXML_CATALOG_ENABLED
    if (nocatalogs == 0) {
        if (catalogs) {
            const char *catal;

            catal = getenv("SGML_CATALOG_FILES");
            xmlLoadCatalogs(catal);
        }
    }
#endif
--8<--------

Need to check if catal is NULL before operating on it. xmlLoadCatalogs will
do try to dereference NULL if the variable is unset. Previously this check
happened immediately after the option was processed, but now that processing
is deferred it doesn't seem to take place.

I've added :

--8<--------
            if (catal == NULL) {
                fprintf(stderr, "Variable $SGML_CATALOG_FILES not set\n");
            } else {
                xmlLoadCatalogs(catal);
            }
--8<--------

which is near-identical to the message in 2.4.2.

-- 
Gerph {djf0-.3w6e2w2.226,6q6w2q2,2.3,2m4}
URL: http://www.movspclr.co.uk/
... Eyes to the heavens, screaming at the sky;
    Trying to send you messages, but choking on goodbye.




[Date Prev][Date Next]   [Thread Prev][Thread Next]   [Thread Index] [Date Index] [Author Index]