summaryrefslogtreecommitdiff
path: root/ext/session/session.c
diff options
context:
space:
mode:
authorChristoph M. Becker <cmbecker69@gmx.de>2021-03-19 17:03:35 +0100
committerChristoph M. Becker <cmbecker69@gmx.de>2021-03-19 17:03:54 +0100
commit2a1ed81ffcd50d493cfbabe2a155328081c6e6c8 (patch)
tree580a3ee1324004d12b6930f7b30cf193e3277d62 /ext/session/session.c
parent97cfdcd73b4d4816610c61011f02cfa788fee046 (diff)
parent06bfada99bcff9bd2e3a5e959effa2237c07939b (diff)
downloadphp-git-2a1ed81ffcd50d493cfbabe2a155328081c6e6c8.tar.gz
Merge branch 'PHP-7.4' into PHP-8.0
* PHP-7.4: Fix #80889: Cannot set save handler when save_handler is invalid
Diffstat (limited to 'ext/session/session.c')
-rw-r--r--ext/session/session.c2
1 files changed, 1 insertions, 1 deletions
diff --git a/ext/session/session.c b/ext/session/session.c
index a23e3a6384..0277884964 100644
--- a/ext/session/session.c
+++ b/ext/session/session.c
@@ -2051,7 +2051,7 @@ PHP_FUNCTION(session_set_save_handler)
remove_user_shutdown_function("session_shutdown", sizeof("session_shutdown") - 1);
}
- if (PS(mod) && PS(session_status) != php_session_active && PS(mod) != &ps_mod_user) {
+ if (PS(session_status) != php_session_active && (!PS(mod) || PS(mod) != &ps_mod_user)) {
ini_name = zend_string_init("session.save_handler", sizeof("session.save_handler") - 1, 0);
ini_val = zend_string_init("user", sizeof("user") - 1, 0);
PS(set_handler) = 1;