chregu Mon Oct 28 03:54:30 2002 EDT Modified files: /php4/ext/domxml php_domxml.c Log: Patch by Morus Walter, concerning some dtd/entity expanding stuff. Index: php4/ext/domxml/php_domxml.c diff -u php4/ext/domxml/php_domxml.c:1.213 php4/ext/domxml/php_domxml.c:1.214 --- php4/ext/domxml/php_domxml.c:1.213 Sat Oct 12 12:16:36 2002 +++ php4/ext/domxml/php_domxml.c Mon Oct 28 03:54:30 2002 @@ -16,7 +16,7 @@ +----------------------------------------------------------------------+ */ -/* $Id: php_domxml.c,v 1.213 2002/10/12 16:16:36 sander Exp $ */ +/* $Id: php_domxml.c,v 1.214 2002/10/28 08:54:30 chregu Exp $ */ /* TODO * - Support Notation Nodes @@ -3777,6 +3777,7 @@ int mode = 0, prevSubstValue; int oldvalue = xmlDoValidityCheckingDefaultValue; int oldvalue_keepblanks; + int prevLoadExtDtdValue = xmlLoadExtDtdDefaultValue; zval *errors ; if (zend_parse_parameters(ZEND_NUM_ARGS() TSRMLS_CC, "s|lz", &buffer, &buffer_len, &mode, &errors) == FAILURE) { @@ -3831,6 +3832,7 @@ } xmlSubstituteEntitiesDefault (prevSubstValue); xmlDoValidityCheckingDefaultValue = oldvalue; + xmlLoadExtDtdDefaultValue = prevLoadExtDtdValue; xmlKeepBlanksDefault(oldvalue_keepblanks); if (!docp) @@ -4955,13 +4957,21 @@ int ret; char *buffer; int buffer_len; + int prevSubstValue, prevExtDtdValue; if (zend_parse_parameters(ZEND_NUM_ARGS() TSRMLS_CC, "s", &buffer, &buffer_len) == FAILURE) { RETURN_FALSE; } + prevSubstValue = xmlSubstituteEntitiesDefault (1); + prevExtDtdValue = xmlLoadExtDtdDefaultValue; + xmlLoadExtDtdDefaultValue = XML_DETECT_IDS | XML_COMPLETE_ATTRS; + docp = xmlParseDoc(buffer); + xmlSubstituteEntitiesDefault (prevSubstValue); + xmlLoadExtDtdDefaultValue = prevExtDtdValue; + if (!docp) RETURN_FALSE; @@ -5014,12 +5024,20 @@ xsltStylesheetPtr sheetp; int ret, file_len; char *file; + int prevSubstValue, prevExtDtdValue; if (zend_parse_parameters(ZEND_NUM_ARGS() TSRMLS_CC, "s", &file, &file_len) == FAILURE) { RETURN_FALSE; } + prevSubstValue = xmlSubstituteEntitiesDefault (1); + prevExtDtdValue = xmlLoadExtDtdDefaultValue; + xmlLoadExtDtdDefaultValue = XML_DETECT_IDS | XML_COMPLETE_ATTRS; + sheetp = xsltParseStylesheetFile(file); + + xmlSubstituteEntitiesDefault (prevSubstValue); + xmlLoadExtDtdDefaultValue = prevExtDtdValue; if (!sheetp) RETURN_FALSE;
-- PHP CVS Mailing List (http://www.php.net/) To unsubscribe, visit: http://www.php.net/unsub.php