felipe Wed May 14 12:32:21 2008 UTC Added files: (Branch: PHP_5_3) /php-src/ext/pdo/tests pdorow.phpt
Modified files: /php-src/ext/pdo pdo_stmt.c Log: - MFH: Add check for avoid segfault when trying instantiate PDORow manually http://cvs.php.net/viewvc.cgi/php-src/ext/pdo/pdo_stmt.c?r1=1.118.2.38.2.24.2.15&r2=1.118.2.38.2.24.2.16&diff_format=u Index: php-src/ext/pdo/pdo_stmt.c diff -u php-src/ext/pdo/pdo_stmt.c:1.118.2.38.2.24.2.15 php-src/ext/pdo/pdo_stmt.c:1.118.2.38.2.24.2.16 --- php-src/ext/pdo/pdo_stmt.c:1.118.2.38.2.24.2.15 Mon Mar 10 22:12:35 2008 +++ php-src/ext/pdo/pdo_stmt.c Wed May 14 12:32:21 2008 @@ -18,7 +18,7 @@ +----------------------------------------------------------------------+ */ -/* $Id: pdo_stmt.c,v 1.118.2.38.2.24.2.15 2008/03/10 22:12:35 felipe Exp $ */ +/* $Id: pdo_stmt.c,v 1.118.2.38.2.24.2.16 2008/05/14 12:32:21 felipe Exp $ */ /* The PDO Statement Handle Class */ @@ -2715,10 +2715,12 @@ void pdo_row_free_storage(pdo_stmt_t *stmt TSRMLS_DC) { - ZVAL_NULL(&stmt->lazy_object_ref); - - if (--stmt->refcount == 0) { - free_statement(stmt TSRMLS_CC); + if (stmt) { + ZVAL_NULL(&stmt->lazy_object_ref); + + if (--stmt->refcount == 0) { + free_statement(stmt TSRMLS_CC); + } } } http://cvs.php.net/viewvc.cgi/php-src/ext/pdo/tests/pdorow.phpt?view=markup&rev=1.1 Index: php-src/ext/pdo/tests/pdorow.phpt +++ php-src/ext/pdo/tests/pdorow.phpt --TEST-- Trying instantiate a PDORow object manually --FILE-- <?php new PDORow; ?> --EXPECTF-- Fatal error: PDORow::__construct(): You should not create a PDOStatement manually in %s on line %d -- PHP CVS Mailing List (http://www.php.net/) To unsubscribe, visit: http://www.php.net/unsub.php