Instead of trying to clean the argument arrays from the backtrace, we
overwrite them with empty arrays.
. Fixed bug #77136 (Unsupported IPV6_RECVPKTINFO constants on macOS).
(Mizunashi Mana)
+- Sodium:
+ . Fixed bug #77297 (SodiumException segfaults on PHP 7.3). (Nikita, Scott)
+
- SQLite3:
. Fixed bug #77051 (Issue with re-binding on SQLite3). (BohwaZ)
ZEND_HASH_FOREACH_VAL(Z_ARRVAL_P(trace), frame) {
if (Z_TYPE_P(frame) == IS_ARRAY) {
zval *args = zend_hash_str_find(Z_ARRVAL_P(frame), "args", sizeof("args")-1);
- if (args && Z_TYPE_P(frame) == IS_ARRAY) {
- zend_hash_clean(Z_ARRVAL_P(args));
- }
+ zval_ptr_dtor(args);
+ ZVAL_EMPTY_ARRAY(args);
}
} ZEND_HASH_FOREACH_END();
}
var_dump('base64("O") case passed');
var_dump('abcd');
}
+
+function sodium_foo()
+{
+ throw new SodiumException('test');
+}
+
+try {
+ sodium_foo();
+} catch (SodiumException $ex) {
+ var_dump($ex->getMessage());
+}
?>
--EXPECT--
string(24) "base64("O1") case passed"
string(23) "base64("O") case passed"
string(4) "abcd"
+string(4) "test"