Skip to content

Commit e306a2e

Browse files
committed
Add missing NULL checks in dbstmt_get_gc
This fixes the nightly Laravel failure: https://github.com/php/php-src/actions/runs/13083746886/job/36512023794
1 parent f1702d2 commit e306a2e

File tree

1 file changed

+6
-2
lines changed

1 file changed

+6
-2
lines changed

ext/pdo/pdo_stmt.c

Lines changed: 6 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -1965,9 +1965,13 @@ static HashTable *dbstmt_get_gc(zend_object *object, zval **gc_data, int *gc_cou
19651965
enum pdo_fetch_type default_fetch_mode = stmt->default_fetch_type & ~PDO_FETCH_FLAGS;
19661966

19671967
zend_get_gc_buffer *gc_buffer = zend_get_gc_buffer_create();
1968-
zend_get_gc_buffer_add_obj(gc_buffer, stmt->database_object_handle);
1968+
if (stmt->database_object_handle) {
1969+
zend_get_gc_buffer_add_obj(gc_buffer, stmt->database_object_handle);
1970+
}
19691971
if (default_fetch_mode == PDO_FETCH_INTO) {
1970-
zend_get_gc_buffer_add_obj(gc_buffer, stmt->fetch.into);
1972+
if (stmt->fetch.into) {
1973+
zend_get_gc_buffer_add_obj(gc_buffer, stmt->fetch.into);
1974+
}
19711975
} else if (default_fetch_mode == PDO_FETCH_CLASS && stmt->fetch.cls.ctor_args != NULL) {
19721976
zend_get_gc_buffer_add_ht(gc_buffer, stmt->fetch.cls.ctor_args);
19731977
}

0 commit comments

Comments
 (0)