Commit Graph
56698 Commits
Author SHA1 Message Date
Dmitry Stogov dddb40313b Keep track information about used JIT trigger in ZEND_FUNC_INFO(op_array)->func_info.flags 2020-09-29 13:05:24 +03:00
Christoph M. Becker a6ecafece9 Use external iterator instead of via the internal pointer 2020-09-29 11:41:17 +02:00
Christoph M. Becker a0051be42a Merge branch 'PHP-7.4' into master
* PHP-7.4:
  Fix #80152: odbc_execute() moves internal pointer of $params
2020-09-29 11:36:54 +02:00
Christoph M. Becker b87e43d931 Merge branch 'PHP-7.3' into PHP-7.4
* PHP-7.3:
  Fix #80152: odbc_execute() moves internal pointer of $params
2020-09-29 11:35:41 +02:00
Christoph M. Becker bf5f07cc8b Fix #80152: odbc_execute() moves internal pointer of $params
As least intrusive fix, we separate the passed array argument.

Closes GH-6219.
2020-09-29 11:34:48 +02:00
Christoph M. Becker 9f5a77188c Fix #22986: odbc_connect() may reuse persistent connection
`odbc_connect()` should not reuse persistent connections, since that
prohibits multiple concurrent connections, which are occasionally
desireable.  We fix that by no longer looking for already cached
connections when `odbc_connect()` is called, and instead creating a new
connection instead.

Closes GH-6223.
2020-09-29 11:20:41 +02:00
Dmitry Stogov 8d9da8df28 Merge branch 'PHP-7.4'
* PHP-7.4:
  Fixed unintended disabling of Optimizer for preloaded scripts introduced by 4a2646cf45
2020-09-29 12:13:17 +03:00
Dmitry Stogov 3928b6b435 Fixed unintended disabling of Optimizer for preloaded scripts introduced by 4a2646cf45 2020-09-29 12:11:01 +03:00
Christoph M. Becker 5f5eba1d7a Merge branch 'PHP-7.4' into master
* PHP-7.4:
  Fix #80150: Failure to fetch error message
2020-09-29 11:05:31 +02:00
Máté Kocsis 351776eae5 Make the $filter parameter of ReflectionClass::get*Constants() nullable 2020-09-29 11:04:10 +02:00
Máté Kocsis e19599287e Reflection param renames amendment
Closes GH-6230
2020-09-29 11:04:10 +02:00
Christoph M. Becker e08f69194c Merge branch 'PHP-7.3' into PHP-7.4
* PHP-7.3:
  Fix #80150: Failure to fetch error message
2020-09-29 11:04:09 +02:00
Máté Kocsis 0ec6452024 Rename a few parameters in ext/filter
Closes GH-6229
2020-09-29 11:04:09 +02:00
Christoph M. Becker df5efa2fcd Fix #80150: Failure to fetch error message
In case of statement related errors, we need to pass the respective
statement handle to `SQLError()`.

Closes GH-6217.
2020-09-29 11:02:51 +02:00
Nikita Popov de2d38d531 Merge branch 'PHP-7.4'
* PHP-7.4:
  Fix bug #80137
  Fix bug #80138
2020-09-29 10:59:46 +02:00
Nikita Popov 1fafcd2b28 Merge branch 'PHP-7.3' into PHP-7.4
* PHP-7.3:
  Fix bug #80137
  Fix bug #80138
2020-09-29 10:59:32 +02:00
Matthias Karbe f5afd0a827 Fix bug #80137
Skip getprotobyname() and getprotobynumber() tests on *nix if there
is no /etc/protocols file.

Closes GH-6193.
2020-09-29 10:58:00 +02:00
Matthias Karbe 2899137391 Fix bug #80138
Skip getservbyname() and getservbyport() tests on *nix if there is
no /etc/services file.

Closes GH-6191.
2020-09-29 10:57:20 +02:00
Stanislav Malyshev e14f835d8c Merge branch 'PHP-7.4'
* PHP-7.4:
  Update UPGRADING
  Update UPGRADING
  Update NEWS & UPGRADING
  Do not decode cookie names anymore
  Fix bug #79601 (Wrong ciphertext/tag in AES-CCM encryption for a 12 bytes IV)
2020-09-28 22:55:37 -07:00
Stanislav Malyshev c4dc080245 Merge branch 'PHP-7.3' into PHP-7.4
* PHP-7.3:
  Update UPGRADING
  Update NEWS & UPGRADING
  Do not decode cookie names anymore
  Fix bug #79601 (Wrong ciphertext/tag in AES-CCM encryption for a 12 bytes IV)
2020-09-28 22:54:57 -07:00
Stanislav Malyshev 2f5cb702ff Fix bug #79601 (Wrong ciphertext/tag in AES-CCM encryption for a 12 bytes IV) 2020-09-28 21:43:11 -07:00
Stanislav Malyshev a9e4321846 Merge branch 'PHP-7.2' into PHP-7.3
* PHP-7.2:
  Update NEWS & UPGRADING
  Do not decode cookie names anymore
  Fix bug #79601 (Wrong ciphertext/tag in AES-CCM encryption for a 12 bytes IV)
2020-09-28 21:39:34 -07:00
Larry Garfield ea03cbebbc Update PDO parameters for named arguments.
Closes GH-6220
2020-09-28 23:02:05 +01:00
Christoph M. Becker 99b3631e9a Merge branch 'PHP-7.4' into master
* PHP-7.4:
  Fix #67465: NULL Pointer dereference in odbc_handle_preparer
2020-09-28 22:59:51 +02:00
Christoph M. Becker f1d8395c77 Merge branch 'PHP-7.3' into PHP-7.4
* PHP-7.3:
  Fix #67465: NULL Pointer dereference in odbc_handle_preparer
2020-09-28 22:58:16 +02:00
Christoph M. Becker 6acfb79276 Fix #67465: NULL Pointer dereference in odbc_handle_preparer
We have to initialize `stmt->driver_data` before we use it.

Closes GH-6225.
2020-09-28 22:57:01 +02:00
Dmitry Stogov f722512c4a Move invariant type guard out of loop 2020-09-28 23:54:28 +03:00
George Peter Banyard 7553c696c3 Another pass making some failure states unconditional erros in PDO
Also make internal function return type more accurate to inform usage
2020-09-28 19:35:31 +01:00
George Peter Banyard a5cf82802d Make various failure conditions in PDO unconditional errors
This includes TypeErrors, ValueErrors, Error for uninitialized objects
and invalid user classes/callable instanciation

Closes GH-6212
2020-09-28 18:51:36 +01:00
George Peter Banyard 24e2ba26b4 Do not register quoter handler in ODBC
This functionallity is not (yet) implemented and therefore gives a bogus error while using PDO
2020-09-28 18:51:35 +01:00
George Peter Banyard 9fab1b90ab Drop ZPP check in PDO MySQLi test
This test is marked as XFAIL so it doesn't get looked at.

It checks that the method is called without arguments which is a ZPP concern
2020-09-28 18:51:35 +01:00
Dmitry Stogov c3206c28d7 Dump class names 2020-09-28 20:29:46 +03:00
George Peter Banyard 189751cbeb Promote notice to ValueError for invalid hint key 2020-09-28 16:24:04 +01:00
Dmitry Stogov 2a71cb3ce1 Improved trace selection rules 2020-09-28 17:04:34 +03:00
Nikita Popov 2f601d84cd Promote warnings in ext/xsl 2020-09-28 16:02:31 +02:00
Nikita Popov 1efbc2cf58 Remove unused XSL_DOMOBJ_NEW() macro
And inline the XSL_REGISTER_CLASS() macro.
2020-09-28 15:42:51 +02:00
Dmitry Stogov d1ddccdc19 Fixed usage of invalid frame for exit point 2020-09-28 16:18:06 +03:00
Nikita Popov 42168304b5 Consistently handle out of bounds offsets in iconv_strpos()
Same as in all other strpos() style functions, throw ValueError on
out of bounds offset.
2020-09-28 14:24:38 +02:00
Nikita Popov 978a44c9c6 Simplify iconv_strpos implementation
Use a separate "reverse" flag to determine search direction,
using offset == -1 to indicate this is is confusing. I initially
thought the code was trying to handle negative offsets.

Also deduplicate the forward and reverse cases, they really only differ
in one place.
2020-09-28 14:17:49 +02:00
Dmitry Stogov 6dd840182e Missed opline guard 2020-09-28 14:47:45 +03:00
Nikita Popov 9e3f352691 Throw warning for invalid iconv charset 2020-09-28 12:51:25 +02:00
Nikita Popov 0a573f9e1c Skip one more imap test under asan
Wondering if the error just moves to a different test each time
we skip one?
2020-09-28 09:54:44 +02:00
Nikita Popov cafceea742 Update mbstring parameter names
Closes GH-6207.
2020-09-28 09:51:58 +02:00
Matteo Beccati d411ea26f1 Fixed test for MySQL < 5.6
Refs GH-6172.
2020-09-28 08:52:21 +02:00
Nikita Popov 8138ed73d7 Make mysqli_warning constructor private
The constructor was already effectively inaccessible (protected
on a final class). This just makes it more obvious and removes
the implementation in favor of directly throwing.

Per the removed test, this was an unfinished feature, and I don't
think it makes a lot of sense to finish it -- the
mysqli_stmt::get_warnings() interface makes more sense than
direct construction.

Closes GH-6208.
2020-09-27 22:08:24 +02:00
Larry Garfield 02dc9ce6e5 Rename mysqli parameters to be more logical
Closes GH-6172.
2020-09-27 21:28:29 +02:00
Levi Morrison 3b34d74a45 Clean up spl_fixedarray.c
Remove inline.
Remove old folding blocks.
Convert an int usage to bool.

Convert some uses of int and size_t into zend_long. This is
incomplete because get_gc requires `int *n`, which should probably
become zend_long or size_t eventually.

Adds spl_fixedarray_empty to help enforce invariants.
Adds spl_fixedarray_default_ctor.
Documents some functions.

Reworks spl_fixedarray_copy into two functions:
  - spl_fixedarray_copy_ctor
  - spl_fixedarray_copy_range

I'm hoping to eventually export SplFixedArray for extensions to
use directly, which is the motivation here.
2020-09-27 12:25:02 -06:00
Nikita Popov 5686c16db4 Honor strict_types=1 for attributes, improve backtraces
Make ReflectionAttribute::newInstance() respect the strict_types=1
declaration at the attribute use-site. More generally, pretend that
we are calling the attribute constructor from the place where the
attribute is used, which also means that the attribute location will
show up properly in backtraces and inside "called in" error information.

This requires us to store the attributes strict_types scope (as flags),
as well as the attribute line number. The attribute filename can be
recovered from the symbol it is used on. We might want to expose the
attribute line number via reflection as well.

See also https://externals.io/message/111915.

Closes GH-6201.
2020-09-27 10:42:58 +02:00
Stanislav Malyshev 0216630ea2 Fix bug #79601 (Wrong ciphertext/tag in AES-CCM encryption for a 12 bytes IV) 2020-09-26 23:46:53 -07:00
Matteo Beccati 43ce7846d2 Skip test with ICU version < 58 2020-09-26 10:47:56 +02:00