1
0
mirror of https://github.com/php/php-src.git synced 2026-04-19 05:51:02 +02:00
Commit Graph

259 Commits

Author SHA1 Message Date
Joe Watkins
0c6a68fa36 Merge branch 'PHP-7.2' into PHP-7.3
* PHP-7.2:
  Follow up #77849 PDOStatement objects in undefined state after clone
2019-04-06 01:27:58 +02:00
Joe Watkins
a2b8a62abf Follow up #77849 PDOStatement objects in undefined state after clone 2019-04-06 01:26:47 +02:00
Joe Watkins
0d5be6ce91 Merge branch 'PHP-7.2' into PHP-7.3
* PHP-7.2:
  Fix bug #77849 Disable cloning of PDO handle/connection objects to avoid segfault
2019-04-06 00:55:46 +02:00
Cameron Porter
9ec1525eb5 Fix bug #77849 Disable cloning of PDO handle/connection objects to avoid segfault 2019-04-06 00:54:59 +02:00
Adam Baratz
a22d2850d4 Merge branch 'PHP-7.2' into PHP-7.3
* PHP-7.2:
  Check column number before trying to fetch the value
2018-11-26 10:36:18 -05:00
Sergei Morozov
e126ca1557 Check column number before trying to fetch the value 2018-11-26 10:34:37 -05:00
Peter Kokot
b746e69887 Sync leading and final newlines in *.phpt sections
This patch adds missing newlines, trims multiple redundant final
newlines into a single one, and trims redundant leading newlines in all
*.phpt sections.

According to POSIX, a line is a sequence of zero or more non-' <newline>'
characters plus a terminating '<newline>' character. [1] Files should
normally have at least one final newline character.

C89 [2] and later standards [3] mention a final newline:
"A source file that is not empty shall end in a new-line character,
which shall not be immediately preceded by a backslash character."

Although it is not mandatory for all files to have a final newline
fixed, a more consistent and homogeneous approach brings less of commit
differences issues and a better development experience in certain text
editors and IDEs.

[1] http://pubs.opengroup.org/onlinepubs/9699919799/basedefs/V1_chap03.html#tag_03_206
[2] https://port70.net/~nsz/c/c89/c89-draft.html#2.1.1.2
[3] https://port70.net/~nsz/c/c99/n1256.html#5.1.1.2
2018-10-15 04:32:30 +02:00
Peter Kokot
f1d7e3ca0b Sync leading and final newlines in *.phpt sections
This patch adds missing newlines, trims multiple redundant final
newlines into a single one, and trims redundant leading newlines in all
*.phpt sections.

According to POSIX, a line is a sequence of zero or more non-' <newline>'
characters plus a terminating '<newline>' character. [1] Files should
normally have at least one final newline character.

C89 [2] and later standards [3] mention a final newline:
"A source file that is not empty shall end in a new-line character,
which shall not be immediately preceded by a backslash character."

Although it is not mandatory for all files to have a final newline
fixed, a more consistent and homogeneous approach brings less of commit
differences issues and a better development experience in certain text
editors and IDEs.

[1] http://pubs.opengroup.org/onlinepubs/9699919799/basedefs/V1_chap03.html#tag_03_206
[2] https://port70.net/~nsz/c/c89/c89-draft.html#2.1.1.2
[3] https://port70.net/~nsz/c/c99/n1256.html#5.1.1.2
2018-10-15 04:31:31 +02:00
Peter Kokot
782352c54a Trim trailing whitespace in *.phpt 2018-10-14 19:45:12 +02:00
Peter Kokot
17ccbeec32 Trim trailing whitespace in *.phpt 2018-10-14 19:44:14 +02:00
Gabriel Caruso
aac5cdc7d7 Remove superfluous SKIPIF sections of always available interfaces 2018-07-29 18:03:34 -03:00
Gabriel Caruso
49c193eeb3 Make more tests run and fix SKIPIF sections 2018-07-16 00:01:46 -03:00
Gabriel Caruso
ded3d984c6 Use EXPECT instead of EXPECTF when possible
EXPECTF logic in run-tests.php is considerable, so let's avoid it.
2018-02-20 21:53:48 +01:00
Gabriel Caruso
84488d921b Remove superfluous SKIPIF sections in more tests 2018-02-04 16:57:08 +01:00
Anatol Belski
8a8bf1dc13 Merge branch 'PHP-7.1' into PHP-7.2
* PHP-7.1:
  Skip test for pdo_odbc
2018-01-02 12:29:19 +01:00
Anatol Belski
463fd04758 Skip test for pdo_odbc
The error messages are too discrepant and '-' is otherwise not allowed
by the parser.
2018-01-02 12:12:46 +01:00
Anatol Belski
08d06f7d4f Merge branch 'PHP-7.1' into PHP-7.2
* PHP-7.1:
  Fix test for pdo_odbc
2018-01-02 11:39:09 +01:00
Anatol Belski
1a9d09784e Fix test for pdo_odbc
SqlServer requires parentheses to the TOP argument.
2018-01-02 11:34:57 +01:00
Anatol Belski
a93445bf55 Merge branch 'PHP-7.1' into PHP-7.2
* PHP-7.1:
  pdo_odbc has no driver API for quoting, skip the test
2017-12-22 16:28:10 +01:00
Anatol Belski
d7cc1ce58f pdo_odbc has no driver API for quoting, skip the test 2017-12-22 16:22:12 +01:00
Adam Baratz
3ac20e0995 Merge branch 'PHP-7.1'
* PHP-7.1:
  Fixed bug #69356
  Fixed #69356: PDOStatement::debugDumpParams() truncates query
2017-06-29 11:44:02 +02:00
Adam Baratz
f15790ec73 Merge branch 'PHP-7.0' into PHP-7.1
* PHP-7.0:
  Fixed #69356: PDOStatement::debugDumpParams() truncates query
2017-06-29 11:40:56 +02:00
Adam Baratz
08089f014c Fixed #69356: PDOStatement::debugDumpParams() truncates query 2017-06-29 11:39:50 +02:00
Adam Baratz
f2f70cfc4b Remove trailing whitespace 2017-01-09 11:41:54 -05:00
Adam Baratz
012cee3fba Explicitly allow NULL values for dblib compatibility
MSSQL won't necessarily default columns to NULL, see:
https://msdn.microsoft.com/en-us/library/ms174979.aspx#Nullability Rules Within a Table Definition
2017-01-09 11:40:25 -05:00
Anatol Belski
595453ac91 Merge branch 'PHP-7.1'
* PHP-7.1:
  Fix PDO tests to match SQL standard syntax and pass Firebird tests.
2017-01-03 17:56:22 +01:00
Anatol Belski
b15cc7913a Merge branch 'PHP-7.0' into PHP-7.1
* PHP-7.0:
  Fix PDO tests to match SQL standard syntax and pass Firebird tests.
2017-01-03 17:54:46 +01:00
Dorin Marcoci
e914abff1e Fix PDO tests to match SQL standard syntax and pass Firebird tests. 2017-01-03 17:48:52 +01:00
Adam Baratz
d58231dda3 Add "Sent SQL" to debug dump for emulated prepares 2016-12-20 11:07:04 -05:00
Adam Baratz
6c692313af Remove PDOStatement::activeQueryString() 2016-12-20 11:06:38 -05:00
Anatol Belski
057ab8da76 Merge branch 'PHP-7.1'
* PHP-7.1:
  update NEWS
  update NEWS
  Compatibility with Firebird & Oracle select syntax.
2016-12-19 01:10:58 +01:00
Anatol Belski
8adc86a698 Merge branch 'PHP-7.0' into PHP-7.1
* PHP-7.0:
  update NEWS
  Compatibility with Firebird & Oracle select syntax.
2016-12-19 01:08:44 +01:00
Dorin Marcoci
eb33d08f1e Compatibility with Firebird & Oracle select syntax. 2016-12-19 01:06:24 +01:00
Nikita Popov
5af586bec5 Remove more PHP 6 leftovers from tests 2016-11-24 22:39:39 +01:00
Adam Baratz
07e395a00d Revert "Remove PDOStatement::activeQueryString()"
This reverts commit 552c957500.
2016-11-17 11:25:31 -05:00
Adam Baratz
552c957500 Remove PDOStatement::activeQueryString() 2016-11-16 18:06:14 -05:00
Adam Baratz
5719553ed2 Fix test for pdo_pgsql 2016-11-16 10:50:14 -05:00
Adam Baratz
83086d9a72 Add PDOStatement::activeQueryString() 2016-11-15 17:33:38 -05:00
Amo Chohan
61e15a37a1 Add tests for PDO::getAvailableDrivers 2016-10-20 20:53:53 -07:00
Adam Baratz
0eeb06bf17 Addendum to #73234: Assume param types are nullable 2016-10-12 11:59:01 -04:00
Adam Baratz
32b6154a61 Fix #73234: Emulated statements let value dictate parameter type
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.
2016-10-10 18:16:17 -04:00
Adam Baratz
6dd4efb70a Merge branch 'PHP-7.1'
* 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
2016-09-13 17:16:46 -04:00
Adam Baratz
f6b6e97b29 Merge branch 'PHP-7.0' into PHP-7.1
* 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
2016-09-13 17:02:53 -04:00
Adam Baratz
bcee34c649 Add special case for earlier versions of TDS 2016-09-13 17:01:51 -04:00
Adam Baratz
5f534e09c3 Merge branch 'PHP-7.1'
* PHP-7.1:
  Explicitly allow NULL values for dblib compatibility
  Add dblib-specific query
  Remove test cases don't test distinct behavior
2016-09-13 16:39:29 -04:00
Adam Baratz
45850213bd Merge branch 'PHP-7.0' into PHP-7.1
* PHP-7.0:
  Explicitly allow NULL values for dblib compatibility
  Add dblib-specific query
  Remove test cases don't test distinct behavior
2016-09-13 16:38:56 -04:00
Adam Baratz
9fb94f03e7 Explicitly allow NULL values for dblib compatibility
MSSQL won't necessarily default columns to NULL, see:
https://msdn.microsoft.com/en-us/library/ms174979.aspx
2016-09-13 16:36:23 -04:00
Adam Baratz
69013f6b26 Add dblib-specific query 2016-09-13 16:36:23 -04:00
Adam Baratz
f0a12af65b Remove test cases don't test distinct behavior
These cases are also incompatible with pdo_dblib. Removing is easier.
2016-09-13 16:36:23 -04:00
Julien Pauli
94ed034827 Revert "Fixes #52384: Adds parameter value to dumped output. Also adds output flag indicating presence of PDO::PARAM_INPUT_OUTPUT."
This reverts commit 04115b4e3f.
2016-09-02 17:57:17 +02:00