]> granicus.if.org Git - php/commitdiff
fix crash, enable session_id and fix test
authorStanislav Malyshev <stas@php.net>
Mon, 5 Aug 2013 00:43:20 +0000 (17:43 -0700)
committerStanislav Malyshev <stas@php.net>
Mon, 5 Aug 2013 00:43:20 +0000 (17:43 -0700)
ext/session/mod_files.c
ext/session/session.c
ext/session/tests/session_save_path_variation5.phpt

index 6beee097b25f08fba010ce9cfb422d8179fabab3..e5733b44f447c59c882ff901446250dc13748d12 100644 (file)
@@ -465,7 +465,7 @@ PS_CREATE_SID_FUNC(files)
        do {
                sid = php_session_create_id((void **)&data, newlen TSRMLS_CC);
                /* Check collision */
-               if (ps_files_key_exists(data, sid TSRMLS_CC) == SUCCESS) {
+               if (data && ps_files_key_exists(data, sid TSRMLS_CC) == SUCCESS) {
                        if (sid) {
                                efree(sid);
                                sid = NULL;
index d90b5c6b84e663baff54d928a6476a385238fec0..c02a10d7bffc7b8f85ea9e7dfa929d3084ed8c62 100644 (file)
@@ -1829,9 +1829,6 @@ static PHP_FUNCTION(session_id)
        }
 
        if (name) {
-               if (PS(use_strict_mode) && argc) {
-                       php_error_docref(NULL TSRMLS_CC, E_WARNING, "Set session ID while session.use_strict_mode is enabled");
-               }
                if (PS(id)) {
                        efree(PS(id));
                }
index 5407b5e15a6983493995c4a7cd32c2a5e8f26a64..c015dcc95c478bc42c0a0068e96b6f03a8f7925c 100644 (file)
@@ -9,7 +9,6 @@ if(substr(PHP_OS, 0, 3) == "WIN")
 session.save_handler=files
 session.save_path=
 session.name=PHPSESSID
-open_basedir=.
 --FILE--
 <?php
 
@@ -25,7 +24,7 @@ $directory = dirname(__FILE__);
 $sessions = ($directory."/sessions");
 
 chdir($directory);
-
+ini_set('open_basedir', '.');
 // Delete the existing directory
 if (file_exists($sessions) === TRUE) {
        @rmdir($sessions);