summaryrefslogtreecommitdiff
path: root/ext/session/mod_files.c
diff options
context:
space:
mode:
authorAnatol Belski <ab@php.net>2016-01-29 13:56:11 +0100
committerAnatol Belski <ab@php.net>2016-01-29 13:56:11 +0100
commitfa548e5ca9b275ac383cadddde0f4e6d9a806f24 (patch)
tree9ccd2df145ef2c1affd4e01a4b53e067b20c2b70 /ext/session/mod_files.c
parent4b0feeb8fabb2be2c5e5c3ab8d4cfac733651344 (diff)
downloadphp-git-fa548e5ca9b275ac383cadddde0f4e6d9a806f24.tar.gz
fix leak in 5.6
Diffstat (limited to 'ext/session/mod_files.c')
-rw-r--r--ext/session/mod_files.c12
1 files changed, 12 insertions, 0 deletions
diff --git a/ext/session/mod_files.c b/ext/session/mod_files.c
index 7e373812d7..06659e3487 100644
--- a/ext/session/mod_files.c
+++ b/ext/session/mod_files.c
@@ -361,6 +361,18 @@ PS_READ_FUNC(files)
}
if (!PS(id)) {
+ if (data) {
+ if (data->lastkey) {
+ efree(data->lastkey);
+ data->lastkey = NULL;
+ }
+ if (data->basedir) {
+ efree(data->basedir);
+ data->basedir = NULL;
+ }
+ efree(data);
+ *mod_data = NULL;
+ }
return FAILURE;
}