[php-src] PR #23970: ext/pdo: Keep prior bindings when execute() fails to bind its array
| From: | iliaal | Date: | Mon, 28 Sep 2026 12:42:09 +0000 |
| Subject: | [php-src] PR #23970: ext/pdo: Keep prior bindings when execute() fails to bind its array | ||
| Groups: | php.git-pulls | ||
| Request: | Send a blank email to git-pulls+get-38884@lists.php.net to get a copy of this message | ||
Pull Request: https://github.com/php/php-src/pull/23970
Author: iliaal
PDOStatement::execute() dropped the existing bindings before binding its array argument, so when an
entry failed part-way through, for example a value whose string conversion throws, the entries bound
so far stayed installed and the next execute() without arguments ran with them. The new table is now
built separately and installed only once every entry is bound. This also stops a __toString() that
re-executes the statement from freeing the table being filled.