rrichards Mon Mar 1 07:43:34 2004 EDT
Modified files:
/php-src/ext/xsl xsltprocessor.c
Log:
use php_libxml_import_node for transform functions
http://cvs.php.net/diff.php/php-src/ext/xsl/xsltprocessor.c?r1=1.24&r2=1.25&ty=u
Index: php-src/ext/xsl/xsltprocessor.c
diff -u php-src/ext/xsl/xsltprocessor.c:1.24 php-src/ext/xsl/xsltprocessor.c:1.25
--- php-src/ext/xsl/xsltprocessor.c:1.24 Mon Mar 1 07:09:24 2004
+++ php-src/ext/xsl/xsltprocessor.c Mon Mar 1 07:43:34 2004
@@ -17,7 +17,7 @@
+----------------------------------------------------------------------+
*/
-/* $Id: xsltprocessor.c,v 1.24 2004/03/01 12:09:24 rrichards Exp $ */
+/* $Id: xsltprocessor.c,v 1.25 2004/03/01 12:43:34 rrichards Exp $ */
#ifdef HAVE_CONFIG_H
#include "config.h"
@@ -379,12 +379,12 @@
{
zval *id, *rv = NULL, *docp = NULL;
xmlDoc *doc = NULL;
+ xmlNodePtr node = NULL;
xmlDoc *newdocp;
xsltStylesheetPtr sheetp;
int ret, clone;
char **params = NULL;
xsl_object *intern;
- php_libxml_node_object *docobj;
id = getThis();
intern = (xsl_object *)zend_object_store_get_object(id TSRMLS_CC);
@@ -393,7 +393,16 @@
if (zend_parse_parameters(ZEND_NUM_ARGS() TSRMLS_CC, "o", &docp) == FAILURE) {
RETURN_FALSE;
}
- DOC_GET_OBJ(doc, docp, xmlDocPtr, docobj);
+
+ node = php_libxml_import_node(docp TSRMLS_CC);
+
+ if (node) {
+ doc = node->doc;
+ }
+ if (doc == NULL) {
+ php_error(E_WARNING, "Invalid Document");
+ RETURN_NULL();
+ }
if (intern->parameter) {
params = php_xsl_xslt_make_params(intern->parameter, 0 TSRMLS_CC);
@@ -437,11 +446,11 @@
zval *id, *docp = NULL;
xmlDoc *doc = NULL;
xmlDoc *newdocp;
+ xmlNodePtr node = NULL;
xsltStylesheetPtr sheetp;
int ret, uri_len, clone;
char **params = NULL, *uri;
xsl_object *intern;
- php_libxml_node_object *docobj;
id = getThis();
intern = (xsl_object *)zend_object_store_get_object(id TSRMLS_CC);
@@ -451,7 +460,15 @@
RETURN_FALSE;
}
- DOC_GET_OBJ(doc, docp, xmlDocPtr, docobj);
+ node = php_libxml_import_node(docp TSRMLS_CC);
+
+ if (node) {
+ doc = node->doc;
+ }
+ if (doc == NULL) {
+ php_error(E_WARNING, "Invalid Document");
+ RETURN_NULL();
+ }
if (intern->parameter) {
params = php_xsl_xslt_make_params(intern->parameter, 0 TSRMLS_CC);
@@ -497,13 +514,13 @@
zval *id, *docp = NULL;
xmlDoc *doc = NULL;
xmlDoc *newdocp;
+ xmlNodePtr node = NULL;
xsltStylesheetPtr sheetp;
int ret, clone;
xmlChar *doc_txt_ptr;
int doc_txt_len;
char **params = NULL;
xsl_object *intern;
- php_libxml_node_object *docobj;
id = getThis();
intern = (xsl_object *)zend_object_store_get_object(id TSRMLS_CC);
@@ -512,7 +529,16 @@
if (zend_parse_parameters(ZEND_NUM_ARGS() TSRMLS_CC, "o", &docp) == FAILURE) {
RETURN_FALSE;
}
- DOC_GET_OBJ(doc, docp, xmlDocPtr, docobj);
+
+ node = php_libxml_import_node(docp TSRMLS_CC);
+
+ if (node) {
+ doc = node->doc;
+ }
+ if (doc == NULL) {
+ php_error(E_WARNING, "Invalid Document");
+ RETURN_NULL();
+ }
if (intern->parameter) {
params = php_xsl_xslt_make_params(intern->parameter, 0 TSRMLS_CC);
--
PHP CVS Mailing List (http://www.php.net/)
To unsubscribe, visit: http://www.php.net/unsub.php