chregu Mon Jan 19 15:54:41 2004 EDT
Modified files:
/php-src/ext/dom document.c
Log:
fixes segfault, if file doesn't exist (by Pierre-Alain)
http://cvs.php.net/diff.php/php-src/ext/dom/document.c?r1=1.44&r2=1.45&ty=u
Index: php-src/ext/dom/document.c
diff -u php-src/ext/dom/document.c:1.44 php-src/ext/dom/document.c:1.45
--- php-src/ext/dom/document.c:1.44 Sun Jan 18 07:56:23 2004
+++ php-src/ext/dom/document.c Mon Jan 19 15:54:40 2004
@@ -17,7 +17,7 @@
+----------------------------------------------------------------------+
*/
-/* $Id: document.c,v 1.44 2004/01/18 12:56:23 chregu Exp $ */
+/* $Id: document.c,v 1.45 2004/01/19 20:54:40 chregu Exp $ */
#ifdef HAVE_CONFIG_H
#include "config.h"
@@ -1720,12 +1720,21 @@
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) {
--
PHP CVS Mailing List (http://www.php.net/)
To unsubscribe, visit: http://www.php.net/unsub.php