summaryrefslogtreecommitdiff
path: root/ext/session/mod_files.c
diff options
context:
space:
mode:
authorFelipe Pena <felipe@php.net>2011-09-14 01:45:57 +0000
committerFelipe Pena <felipe@php.net>2011-09-14 01:45:57 +0000
commita99f146ec4f7a6aed9a3e31b2c9b5b276f878cc1 (patch)
treefc4b64e0705f1ae3d8ba640961b39f8a4fdac03c /ext/session/mod_files.c
parent465475a7a25d5d260841df916fb57944fe7bda51 (diff)
downloadphp-git-a99f146ec4f7a6aed9a3e31b2c9b5b276f878cc1.tar.gz
- Fixed memory leak when calling SessionHandler::open() several times
Diffstat (limited to 'ext/session/mod_files.c')
-rw-r--r--ext/session/mod_files.c3
1 files changed, 3 insertions, 0 deletions
diff --git a/ext/session/mod_files.c b/ext/session/mod_files.c
index c3c35093c3..b0687fac15 100644
--- a/ext/session/mod_files.c
+++ b/ext/session/mod_files.c
@@ -311,6 +311,9 @@ PS_OPEN_FUNC(files)
data->basedir_len = strlen(save_path);
data->basedir = estrndup(save_path, data->basedir_len);
+ if (PS_GET_MOD_DATA()) {
+ ps_close_files(mod_data TSRMLS_CC);
+ }
PS_SET_MOD_DATA(data);
return SUCCESS;