]> granicus.if.org Git - php/commitdiff
- MF51: fix crash in DOMImplementation::createDocumentType("name:")
authorMichael Wallner <mike@php.net>
Fri, 24 Feb 2006 10:24:43 +0000 (10:24 +0000)
committerMichael Wallner <mike@php.net>
Fri, 24 Feb 2006 10:24:43 +0000 (10:24 +0000)
ext/dom/domimplementation.c

index aa371f81540672eaf7ab7fd00644d77d6a9e3763..f65da0572bc6b78433d0db99856ce4a4d26c469d 100644 (file)
@@ -92,7 +92,7 @@ PHP_METHOD(domimplementation, createDocumentType)
                pch2 = systemid;
 
        uri = xmlParseURI(name);
-       if (uri->opaque != NULL) {
+       if (uri != NULL && uri->opaque != NULL) {
                localname = xmlStrdup(uri->opaque);
                if (xmlStrchr(localname, (xmlChar) ':') != NULL) {
                        php_dom_throw_error(NAMESPACE_ERR, 1 TSRMLS_CC);
@@ -108,7 +108,9 @@ PHP_METHOD(domimplementation, createDocumentType)
        php_dom_throw_error(INVALID_CHARACTER_ERR, TSRMLS_CC);
        */
 
-       xmlFreeURI(uri);
+       if (uri) {
+               xmlFreeURI(uri);
+       }
 
        doctype = xmlCreateIntSubset(NULL, localname, pch1, pch2);
        xmlFree(localname);