Skip to content

Commit 717fe60

Browse files
committed
Drop usages of E_RECOVERABLE_ERROR
There were only 2 remaining usages.
1 parent 68b2193 commit 717fe60

6 files changed

+28
-8
lines changed

Zend/zend_operators.c

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -2540,7 +2540,7 @@ ZEND_API bool ZEND_FASTCALL zend_object_is_true(zval *op) /* {{{ */
25402540
if (zobj->handlers->cast_object(zobj, &tmp, _IS_BOOL) == SUCCESS) {
25412541
return Z_TYPE(tmp) == IS_TRUE;
25422542
}
2543-
zend_error(E_RECOVERABLE_ERROR, "Object of class %s could not be converted to bool", ZSTR_VAL(zobj->ce->name));
2543+
zend_type_error("Object of class %s could not be converted to bool", ZSTR_VAL(zobj->ce->name));
25442544
return false;
25452545
}
25462546
/* }}} */

ext/session/session.c

Lines changed: 6 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -551,8 +551,8 @@ static PHP_INI_MH(OnUpdateSaveHandler) /* {{{ */
551551
}
552552

553553
/* "user" save handler should not be set by user */
554-
if (!PS(set_handler) && tmp == ps_user_ptr) {
555-
php_error_docref(NULL, E_RECOVERABLE_ERROR, "Cannot set 'user' save handler by ini_set() or session_module_name()");
554+
if (!PS(set_handler) && tmp == ps_user_ptr) {
555+
php_error_docref(NULL, E_ERROR, "Cannot set 'user' save handler by ini_set()");
556556
return FAILURE;
557557
}
558558

@@ -1896,6 +1896,10 @@ PHP_FUNCTION(session_module_name)
18961896
}
18971897

18981898
if (name) {
1899+
if (zend_string_equals_literal_ci(name, "user")) {
1900+
zend_argument_value_error(1, "cannot be \"user\"");
1901+
RETURN_THROWS();
1902+
}
18991903
if (!_php_find_ps_module(ZSTR_VAL(name))) {
19001904
php_error_docref(NULL, E_WARNING, "Cannot find named PHP session module (%s)", ZSTR_VAL(name));
19011905

ext/session/tests/bug60860.phpt

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -15,5 +15,5 @@ echo "ok\n";
1515

1616
?>
1717
--EXPECT--
18-
Recoverable fatal error: PHP Startup: Cannot set 'user' save handler by ini_set() or session_module_name() in Unknown on line 0
18+
Fatal error: PHP Startup: Cannot set 'user' save handler by ini_set() in Unknown on line 0
1919
ok

ext/session/tests/bug73100.phpt

Lines changed: 7 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -14,13 +14,17 @@ var_dump(session_start());
1414
session_module_name("user");
1515
var_dump(session_destroy());
1616

17-
session_module_name("user");
17+
try {
18+
session_module_name("user");
19+
} catch (\ValueError $e) {
20+
echo $e->getMessage() . \PHP_EOL;
21+
}
1822
?>
1923
===DONE===
2024
--EXPECTF--
2125
bool(true)
2226

2327
Warning: session_module_name(): Cannot change save handler module when session is active in %s on line 4
2428
bool(true)
25-
26-
Recoverable fatal error: session_module_name(): Cannot set 'user' save handler by ini_set() or session_module_name() in %s on line 7
29+
session_module_name(): Argument #1 ($module) cannot be "user"
30+
===DONE===
Lines changed: 12 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,12 @@
1+
--TEST--
2+
Error when setting session.save_handler to user via ini_set
3+
--SKIPIF--
4+
<?php
5+
include('skipif.inc');
6+
?>
7+
--FILE--
8+
<?php
9+
ini_set('session.save_handler', 'user');
10+
?>
11+
--EXPECTF--
12+
Fatal error: ini_set(): Cannot set 'user' save handler by ini_set() in %s on line %d

ext/session/tests/session_set_save_handler_class_014.phpt

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -21,5 +21,5 @@ session_set_save_handler($handler);
2121
session_start();
2222
?>
2323
--EXPECT--
24-
Recoverable fatal error: PHP Startup: Cannot set 'user' save handler by ini_set() or session_module_name() in Unknown on line 0
24+
Fatal error: PHP Startup: Cannot set 'user' save handler by ini_set() in Unknown on line 0
2525
*** Testing session_set_save_handler() : calling default handler when save_handler=user ***

0 commit comments

Comments
 (0)