DBDO is a PECL package which hasn't been updated since 2010 and has been marked
as unmaintained. Additionally, I can't find a reference to this field in the
latest source.
The prepared statement emulator (pdo_sql_parser.*) figures out how to quote
each query parameter. The intended type is specified by the PDO::PARAM_*
consts, but this direction wasn't always followed. In practice, queries could
work as expected, but subtle errors could result. For example, a numeric string
bound as PDO::PARAM_INT would be sent to a driver's quote function. While these
functions are told which type is expected, they generally assume values are
being quoted as strings. This can result in implicit casts, which are bad for
performance.
This commit includes the following changes:
- Cast values marked as bool/int/null to the appropriate type and bypass the
driver's quote function.
- Save some memory by dropping the temporary zval used for casting.
- Avoid a memory leak if the driver's quote function produces an error.
- Appropriate test suite updates.
* PHP-7.1:
Add special case for earlier versions of TDS
Adjust error formatting so ext/pdo/tests/bug_43130.phpt passes with pdo_dblib
Free error and message strings when cleaning up PDO instances that use pdo_dblib
Add common suite
* PHP-7.0:
Add special case for earlier versions of TDS
Adjust error formatting so ext/pdo/tests/bug_43130.phpt passes with pdo_dblib
Free error and message strings when cleaning up PDO instances that use pdo_dblib
Add common suite
The has_property handler only checked whether a respective column name
exists, but neither whether the column value is set, nor whether it is
empty, respectively. We fix that to match the behavior of POD:FETCH_OBJ in
particular and PHP in general.
* PHP-7.0:
Fixed bug #72788 (Invalid memory access when using persistent PDO connection)
Remove typo'd commit
Fix bug 72788: Invalid memory access when database_object_handle is undefined. Also fix memory leak in dbh_free when using persistent PDO connections.
The __construct function name was leaked. Avoid this by simply
throwing directly from row_get_ctor instead of indirecting through
an actual __construct function.
* PHP-7.0:
Updated NEWS
Updated NEWS
Revert "Fixes #52384: Adds parameter value to dumped output. Also adds output flag indicating presence of PDO::PARAM_INPUT_OUTPUT."
Revert "Fix test for #52384"
Conflicts:
ext/pdo/pdo_stmt.c
* PHP-5.6:
Updated NEWS
Revert "Fixes #52384: Adds parameter value to dumped output. Also adds output flag indicating presence of PDO::PARAM_INPUT_OUTPUT."
Revert "Fix test for #52384"
Conflicts:
ext/pdo/pdo_stmt.c
* PHP-7.0:
Updated NEWS
Updated NEWS
Fixes#52384: Adds parameter value to dumped output. Also adds output flag indicating presence of PDO::PARAM_INPUT_OUTPUT.
Conflicts:
ext/pdo/pdo_stmt.c
* PHP-5.6:
Updated NEWS
Fixes#52384: Adds parameter value to dumped output. Also adds output flag indicating presence of PDO::PARAM_INPUT_OUTPUT.
Conflicts:
ext/pdo/pdo_stmt.c
* PHP-7.0:
Fixed bug #71447 (Quotes inside comments not properly handled)
Fixed a few PDO tests to conform to PDO Common standards
news entry #69537Fix#69537: __debugInfo with empty string for key gives error
* PHP-5.6:
Fixed bug #71447 (Quotes inside comments not properly handled)
Fixed a few PDO tests to conform to PDO Common standards
news entry #69537Fix#69537: __debugInfo with empty string for key gives error
Conflicts:
Zend/zend_compile.c