]> granicus.if.org Git - php/commitdiff
fixes segfault, if file doesn't exist (by Pierre-Alain)
authorChristian Stocker <chregu@php.net>
Mon, 19 Jan 2004 20:54:40 +0000 (20:54 +0000)
committerChristian Stocker <chregu@php.net>
Mon, 19 Jan 2004 20:54:40 +0000 (20:54 +0000)
ext/dom/document.c

index 49eb34d6a3f6edf8c5c8591daa531ffd5b8d7fc8..85f9ff00306e14528552157e8bb32567f77fc46a 100644 (file)
@@ -1720,12 +1720,21 @@ static void dom_load_html(INTERNAL_FUNCTION_PARAMETERS, int mode)
                return;
        }
 
+       if (!source_len) {
+               RETURN_FALSE;
+       }
+
        if (mode == DOM_LOAD_FILE) {
                ctxt = htmlCreateFileParserCtxt(source, NULL);
        } else {
                source_len = xmlStrlen(source);
                ctxt = htmlCreateMemoryParserCtxt(source, source_len);
        }
+
+       if (!ctxt) {
+               RETURN_FALSE;
+       }
+
        ctxt->vctxt.error = php_libxml_ctx_error;
        ctxt->vctxt.warning = php_libxml_ctx_warning;
        if (ctxt->sax != NULL) {