summaryrefslogtreecommitdiff
path: root/ext/session/session.c
diff options
context:
space:
mode:
authorArpad Ray <arraypad@gmail.com>2013-07-17 11:02:48 +0100
committerArpad Ray <arraypad@gmail.com>2013-07-17 11:02:48 +0100
commitba3234888dfbe14dadac7ac6c403a58bc1fdd220 (patch)
treec6c0c282ea5a73f42060940f03193339710a5a47 /ext/session/session.c
parenteb8c15b57375ec6755c406aa9ce7a5d9145ab1c1 (diff)
downloadphp-git-ba3234888dfbe14dadac7ac6c403a58bc1fdd220.tar.gz
Fix bug #62129 - rfc1867 crashes php even though turned off
Patch by gxd305 at gmail dot com
Diffstat (limited to 'ext/session/session.c')
-rw-r--r--ext/session/session.c7
1 files changed, 5 insertions, 2 deletions
diff --git a/ext/session/session.c b/ext/session/session.c
index 5af3ef2780..bbfe90e862 100644
--- a/ext/session/session.c
+++ b/ext/session/session.c
@@ -2246,8 +2246,11 @@ static PHP_MSHUTDOWN_FUNCTION(session) /* {{{ */
PHP_MSHUTDOWN(ps_mm) (SHUTDOWN_FUNC_ARGS_PASSTHRU);
#endif
- /* restore the orig callback */
- php_rfc1867_callback = php_session_rfc1867_orig_callback;
+ /* reset rfc1867 callbacks */
+ php_session_rfc1867_orig_callback = NULL;
+ if (php_rfc1867_callback == php_session_rfc1867_callback) {
+ php_rfc1867_callback = NULL;
+ }
ps_serializers[PREDEFINED_SERIALIZERS].name = NULL;
memset(&ps_modules[PREDEFINED_MODULES], 0, (MAX_MODULES-PREDEFINED_MODULES)*sizeof(ps_module *));