chregu Mon Oct 27 07:16:35 2003 EDT
Modified files:
/php-src/ext/xsl xsltprocessor.c
Log:
fix for test Nr 3 bug (not freeing all params)
Index: php-src/ext/xsl/xsltprocessor.c
diff -u php-src/ext/xsl/xsltprocessor.c:1.14 php-src/ext/xsl/xsltprocessor.c:1.15
--- php-src/ext/xsl/xsltprocessor.c:1.14 Sun Oct 26 10:57:31 2003
+++ php-src/ext/xsl/xsltprocessor.c Mon Oct 27 07:16:35 2003
@@ -17,7 +17,7 @@
+----------------------------------------------------------------------+
*/
-/* $Id: xsltprocessor.c,v 1.14 2003/10/26 15:57:31 rrichards Exp $ */
+/* $Id: xsltprocessor.c,v 1.15 2003/10/27 12:16:35 chregu Exp $ */
#ifdef HAVE_CONFIG_H
#include "config.h"
@@ -103,7 +103,7 @@
if (!xpath_params) {
xpath_expr =
php_xsl_xslt_string_to_xpathexpr(Z_STRVAL_PP(value) TSRMLS_CC);
} else {
- xpath_expr = Z_STRVAL_PP(value);
+ xpath_expr = estrndup(Z_STRVAL_PP(value),
strlen(Z_STRVAL_PP(value)));
}
if (xpath_expr) {
params[i++] = string_key;
@@ -207,6 +207,10 @@
}
if (params) {
+ clone = 0;
+ while(params[clone]) {
+ efree(params[clone++]);
+ }
efree(params);
}
@@ -258,6 +262,10 @@
}
if (params) {
+ clone = 0;
+ while(params[clone]) {
+ efree(params[clone++]);
+ }
efree(params);
}
@@ -311,6 +319,10 @@
}
if (params) {
+ clone = 0;
+ while(params[clone]) {
+ efree(params[clone++]);
+ }
efree(params);
}
--
PHP CVS Mailing List (http://www.php.net/)
To unsubscribe, visit: http://www.php.net/unsub.php