mirror of
https://github.com/php/php-src.git
synced 2024-11-23 18:04:36 +08:00
Merge branch 'PHP-8.2' into PHP-8.3
* PHP-8.2: Fix GH-13998: Manage refcount of agg_context->val correctly (#14004)
This commit is contained in:
commit
43064160c4
2
NEWS
2
NEWS
@ -44,6 +44,8 @@ PHP NEWS
|
||||
|
||||
- PDO SQLite:
|
||||
. Fix GH-13984 (Buffer size is now checked before memcmp). (Saki Takamachi)
|
||||
. Fix GH-13998 (Manage refcount of agg_context->val correctly).
|
||||
(Saki Takamachi)
|
||||
|
||||
- Phar:
|
||||
. Fixed bug GH-13836 (Renaming a file in a Phar to an already existing
|
||||
|
@ -428,7 +428,6 @@ static int do_callback(struct pdo_sqlite_fci *fc, zval *cb,
|
||||
* the context */
|
||||
if (agg_context) {
|
||||
if (Z_ISUNDEF(retval)) {
|
||||
zval_ptr_dtor(&agg_context->val);
|
||||
return FAILURE;
|
||||
}
|
||||
zval_ptr_dtor(Z_REFVAL(agg_context->val));
|
||||
|
25
ext/pdo_sqlite/tests/gh13998.phpt
Normal file
25
ext/pdo_sqlite/tests/gh13998.phpt
Normal file
@ -0,0 +1,25 @@
|
||||
--TEST--
|
||||
Fix GH-13998: Manage refcount of agg_context->val correctly
|
||||
--EXTENSIONS--
|
||||
pdo_sqlite
|
||||
--FILE--
|
||||
<?php
|
||||
$step = function () {
|
||||
throw new Exception();
|
||||
};
|
||||
$finalize = function () {
|
||||
};
|
||||
|
||||
$db = new PDO('sqlite::memory:');
|
||||
$db->query('CREATE TABLE test (a int, b int)');
|
||||
$stmt = $db->query('INSERT INTO test VALUES (1, 1), (2, 2), (3, 3)');
|
||||
$db->sqliteCreateAggregate('S', $step, $finalize, 1);
|
||||
|
||||
try {
|
||||
$db->query('SELECT S(a) FROM test');
|
||||
} catch (Exception $e) {
|
||||
echo 'done!';
|
||||
}
|
||||
?>
|
||||
--EXPECT--
|
||||
done!
|
Loading…
Reference in New Issue
Block a user