summaryrefslogtreecommitdiff
path: root/ext/readline/readline.c
diff options
context:
space:
mode:
authorFelipe Pena <felipe@php.net>2008-11-20 22:25:37 +0000
committerFelipe Pena <felipe@php.net>2008-11-20 22:25:37 +0000
commitda067890db16358c0e69a83e78dfed6f93c6183e (patch)
treed9c1341708e567f4ce72ae2fc4fbb339f2393c57 /ext/readline/readline.c
parentd43b7b022f3f654a7995f38eccb8a5d18b6c3402 (diff)
downloadphp-git-da067890db16358c0e69a83e78dfed6f93c6183e.tar.gz
- MFH: Fixed memory leaks in readline_completion_function()
Diffstat (limited to 'ext/readline/readline.c')
-rw-r--r--ext/readline/readline.c6
1 files changed, 5 insertions, 1 deletions
diff --git a/ext/readline/readline.c b/ext/readline/readline.c
index b8dbb535d6..766a9d79de 100644
--- a/ext/readline/readline.c
+++ b/ext/readline/readline.c
@@ -169,8 +169,10 @@ PHP_MINIT_FUNCTION(readline)
PHP_RSHUTDOWN_FUNCTION(readline)
{
- if (_readline_completion)
+ if (_readline_completion) {
+ zval_dtor(_readline_completion);
FREE_ZVAL(_readline_completion);
+ }
#if HAVE_RL_CALLBACK_READ_CHAR
if (_prepped_callback) {
rl_callback_handler_remove();
@@ -491,8 +493,10 @@ PHP_FUNCTION(readline_completion_function)
efree(name);
RETURN_FALSE;
}
+ efree(name);
if (_readline_completion) {
+ zval_dtor(_readline_completion);
FREE_ZVAL(_readline_completion);
}