summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorStanislav Malyshev <stas@php.net>2005-02-02 10:37:50 +0000
committerStanislav Malyshev <stas@php.net>2005-02-02 10:37:50 +0000
commit7b241027faf4c58f2ffea0e7de4948a719ffb5a8 (patch)
tree3b0185bfc214c4dbff66ef58ce542a686644fe79
parent3925337a55943c7f067dc1a467f95a3c85acf20d (diff)
downloadphp-git-7b241027faf4c58f2ffea0e7de4948a719ffb5a8.tar.gz
fix memory leak if function call fails
-rw-r--r--ext/standard/array.c5
1 files changed, 4 insertions, 1 deletions
diff --git a/ext/standard/array.c b/ext/standard/array.c
index 93b9cd28ff..ba3f2aa103 100644
--- a/ext/standard/array.c
+++ b/ext/standard/array.c
@@ -1093,7 +1093,10 @@ static int php_array_walk(HashTable *target_hash, zval **userdata, int recursive
} else {
php_error_docref(NULL TSRMLS_CC, E_WARNING, "Unable to call %s() - function does not exist", func_name);
}
-
+ if (key) {
+ zval_ptr_dtor(&key);
+ key = NULL;
+ }
efree(func_name);
break;
}