felipe Mon Nov 3 20:45:43 2008 UTC
Added files:
/php-src/ext/pdo_sqlite/tests debugdumpparams_001.phpt
Modified files:
/php-src/ext/pdo pdo_stmt.c
Log:
- Fixed endless loop in PDOStatement::debugDumpParams()
patch by: Jonah H. Harris <jonah.harris at gmail dot com>
http://cvs.php.net/viewvc.cgi/php-src/ext/pdo/pdo_stmt.c?r1=1.205&r2=1.206&diff_format=u
Index: php-src/ext/pdo/pdo_stmt.c
diff -u php-src/ext/pdo/pdo_stmt.c:1.205 php-src/ext/pdo/pdo_stmt.c:1.206
--- php-src/ext/pdo/pdo_stmt.c:1.205 Mon Nov 3 15:31:51 2008
+++ php-src/ext/pdo/pdo_stmt.c Mon Nov 3 20:45:43 2008
@@ -18,7 +18,7 @@
+----------------------------------------------------------------------+
*/
-/* $Id: pdo_stmt.c,v 1.205 2008/11/03 15:31:51 felipe Exp $ */
+/* $Id: pdo_stmt.c,v 1.206 2008/11/03 20:45:43 felipe Exp $ */
/* The PDO Statement Handle Class */
@@ -2211,6 +2211,7 @@
param->is_param,
param->param_type);
+ zend_hash_move_forward_ex(stmt->bound_params, &pos);
}
}
http://cvs.php.net/viewvc.cgi/php-src/ext/pdo_sqlite/tests/debugdumpparams_001.phpt?view=markup&rev=1.1
Index: php-src/ext/pdo_sqlite/tests/debugdumpparams_001.phpt
+++ php-src/ext/pdo_sqlite/tests/debugdumpparams_001.phpt
--TEST--
Testing PDOStatement::debugDumpParams() with bound params
--SKIPIF--
<?php
if (!extension_loaded('pdo_sqlite')) print 'skip not loaded';
?>
--FILE--
<?php
$db = new pdo('sqlite:memory');
$x= $db->prepare('select :a, :b');
$x->bindValue(':a', 1, PDO::PARAM_INT);
$x->bindValue(':b', 'foo');
var_dump($x->debugDumpParams());
?>
--EXPECT--
SQL: [13] select :a, :b
Params: 2
Key: Position #0:
paramno=-1
name=[2] :a
is_param=1
param_type=1
Key: Position #0:
paramno=-1
name=[2] :b
is_param=1
param_type=2
NULL
--
PHP CVS Mailing List (http://www.php.net/)
To unsubscribe, visit: http://www.php.net/unsub.php