]> granicus.if.org Git - php/commitdiff
change ini handlers to produce E_ERROR if they are called during startup
authorAntony Dovgal <tony2001@php.net>
Wed, 30 Aug 2006 16:24:40 +0000 (16:24 +0000)
committerAntony Dovgal <tony2001@php.net>
Wed, 30 Aug 2006 16:24:40 +0000 (16:24 +0000)
ext/session/session.c

index a4eb7af687a32efcb027fecec639e8d6ff4f1bc5..3078cff9fc66b9d761fc2c56a3e8c70323a0099b 100644 (file)
@@ -101,7 +101,13 @@ static PHP_INI_MH(OnUpdateSaveHandler)
        tmp = _php_find_ps_module(new_value TSRMLS_CC);
 
        if (PG(modules_activated) && !tmp) {
-               php_error_docref(NULL TSRMLS_CC, E_WARNING, "Cannot find save handler %s", new_value);
+               int err_type;
+               if (stage == ZEND_INI_STAGE_RUNTIME) {
+                       err_type = E_WARNING;
+               } else {
+                       err_type = E_ERROR;
+               }
+               php_error_docref(NULL TSRMLS_CC, err_type, "Cannot find save handler %s", new_value);
                return FAILURE;
        }
        PS(mod) = tmp;
@@ -130,7 +136,13 @@ static PHP_INI_MH(OnUpdateSerializer)
        tmp = _php_find_ps_serializer(new_value TSRMLS_CC);
 
        if (PG(modules_activated) && !tmp) {
-               php_error_docref(NULL TSRMLS_CC, E_ERROR, "Cannot find serialization handler %s", new_value);
+               int err_type;
+               if (stage == ZEND_INI_STAGE_RUNTIME) {
+                       err_type = E_WARNING;
+               } else {
+                       err_type = E_ERROR;
+               }
+               php_error_docref(NULL TSRMLS_CC, err_type, "Cannot find serialization handler %s", new_value);
                return FAILURE;
        }
        PS(serializer) = tmp;