1
0
mirror of https://github.com/php/php-src.git synced 2026-04-22 23:48:14 +02:00
Commit Graph

118493 Commits

Author SHA1 Message Date
Nikita Popov 718e55c3e0 Add zend_array_release() function
To complement zend_string_release() and zend_object_release().
2020-05-06 11:27:20 +02:00
Nikita Popov e41f764b5c Revert "Move declaration at top of the block"
This reverts commit b56f203850.

We use C99 now, this is not needed anymore.
2020-05-06 09:42:58 +02:00
Xinchen Hui b56f203850 Move declaration at top of the block 2020-05-06 14:01:56 +08:00
George Peter Banyard ba45addb38 Use correct variable
This seems to stem from a copy paste, however there is no object variable in this function
2020-05-05 22:12:31 +02:00
Máté Kocsis 3ebce8e9fc Fix UNKNOWN default values in various extensions
Closes GH-5514
2020-05-05 19:08:20 +02:00
Nikita Popov 5bc1e224db Make numeric operations on resources, arrays and objects type errors
RFC: https://wiki.php.net/rfc/arithmetic_operator_type_checks

Closes GH-5331.
2020-05-05 16:11:13 +02:00
William Hudgins 31fb6a08b3 Add str_starts_with() and str_ends_with()
RFC: https://wiki.php.net/rfc/add_str_starts_with_and_ends_with_functions

Closes GH-5300.
2020-05-05 16:03:47 +02:00
Christoph M. Becker e749db4047 Merge branch 'PHP-7.4'
* PHP-7.4:
  Fix #79566: Private SHM is not private on Windows
2020-05-05 11:41:31 +02:00
Christoph M. Becker 80b5006196 Merge branch 'PHP-7.3' into PHP-7.4
* PHP-7.3:
  Fix #79566: Private SHM is not private on Windows
2020-05-05 11:41:04 +02:00
Christoph M. Becker f33cf52faf Fix #79566: Private SHM is not private on Windows
We map the POSIX semantics of `IPC_PRIVATE` by creating unnamed file
mapping objects on Windows.  While that is not particularly useful for
ext/shmop, which is the only bundled extension which uses `shmget()`,
it may be useful for external extensions.
2020-05-05 11:38:29 +02:00
Nikita Popov 901417f0ae Fix mbfl default allocators
Forgot to remove the persistent allocators from here.
2020-05-04 23:41:39 +02:00
Nikita Popov a0cae937c5 Spec mbfl allocators as infallible
And remove all NULL checks.
2020-05-04 23:19:07 +02:00
Nikita Popov 7d4ff8443e Remove persistent allocators from libmbfl
These functions are not used, and I don't think we have any plans
to ever use them.
2020-05-04 23:19:07 +02:00
Christoph M. Becker 6086343a91 Merge branch 'PHP-7.4'
* PHP-7.4:
  Fix #79561: dns_get_record() fails with DNS_ALL
2020-05-04 23:02:00 +02:00
Christoph M. Becker ed6bf0bc69 Merge branch 'PHP-7.3' into PHP-7.4
* PHP-7.3:
  Fix #79561: dns_get_record() fails with DNS_ALL
2020-05-04 23:00:56 +02:00
Christoph M. Becker c40a494406 Fix #79561: dns_get_record() fails with DNS_ALL
Since Windows has its own definitions of the `PHP_DNS_*` macros, we
have to use these when registering the PHP constants.
2020-05-04 22:59:38 +02:00
AllenJB 50752401a7 Change the default PDO error mode to exceptions
According to <https://www.php.net/manual/en/pdo.error-handling.php>.
2020-05-04 22:51:47 +02:00
Nikita Popov 8ffbd4653e Perform isupper check using sse2 as well
Rather than just vectorizing the lowering, also vectorize the
check for uppercase characters, using the same method.
2020-05-04 19:19:54 +02:00
Nikita Popov 4c24545aab Merge branch 'PHP-7.4'
* PHP-7.4:
  Fixed bug #79548
2020-05-04 16:30:34 +02:00
Nikita Popov 21a9ad910b Fixed bug #79548
When duplicating user functions with static variables, make sure
that we init a new map ptr slot for the static variables.
2020-05-04 16:27:45 +02:00
Nikita Popov 2dc4481fa9 Extract one more function from proc_open() implementation 2020-05-04 15:24:23 +02:00
Alex Dowad 51b0494e2f Clean up proc_open() implementation
Closes GH-5507.
2020-05-04 15:04:58 +02:00
Nikita Popov 66d57bf8d6 Remove unused is_persistent flag
I dropped the assignment to it before, but did not drop the
struct member.
2020-05-04 14:59:35 +02:00
Nikita Popov f55b413d60 Merge branch 'PHP-7.4'
* PHP-7.4:
  Fixed bug #79535
2020-05-04 14:52:42 +02:00
Nikita Popov 733d84dbdf Merge branch 'PHP-7.3' into PHP-7.4
* PHP-7.3:
  Fixed bug #79535
2020-05-04 14:52:18 +02:00
Nikita Popov 7c1316ec6a Fixed bug #79535
We did not allocate a cache slot for FETCH_CLASS. This is already
fixed on newer PHP versions.
2020-05-04 14:51:18 +02:00
Nikita Popov 7561f91796 Merge branch 'PHP-7.4'
* PHP-7.4:
  Fix i386 build on Azure
2020-05-04 14:35:33 +02:00
Nikita Popov 9c5d9b4925 Fix i386 build on Azure
Disabling postgresql entirely for now, because I can't figure out
how to fix it. Something broke big time with i386 packages on
Azure pipelines.
2020-05-04 14:35:16 +02:00
George Peter Banyard 8d346f7679 Use ZPP int|string and add ValueError for Windows codepages
Closes GH-5517
2020-05-04 12:44:54 +02:00
Christoph M. Becker 2787d0f8dd Merge branch 'PHP-7.4'
* PHP-7.4:
  Add basic sapi_windows_cp_conv() test
2020-05-04 11:52:01 +02:00
Christoph M. Becker ef54899fd1 Merge branch 'PHP-7.3' into PHP-7.4
* PHP-7.3:
  Add basic sapi_windows_cp_conv() test
2020-05-04 11:50:50 +02:00
Christoph M. Becker d950969e59 Add basic sapi_windows_cp_conv() test
This function is lacking any tests so far.
2020-05-04 11:50:03 +02:00
Christoph M. Becker 54cf9a26c1 Use libenchant2 if available on Windows
This is basically the same as commit 3427545[1], but for Windows.

[1] <http://git.php.net/?p=php-src.git;a=commitdiff;h=342754575237da912874f781a24eefe76434ce5a>
2020-05-04 11:27:00 +02:00
Remi Collet 3427545752 Use libenchant-2 when available 2020-05-04 08:27:31 +02:00
Christoph M. Becker 69888c3ff1 Fix #79467: data:// wrappers are writable
Despite the docs claiming that data: wrappers would not be writable[1],
they are implemented as writing to a memory stream.  That does not seem
to be particularly sensible, so we disallow writing altogether.

[1] <https://www.php.net/manual/en/wrappers.data.php#refsect1-wrappers.data-options>
2020-05-03 12:19:37 +02:00
George Peter Banyard 34f727e637 Use ZPP check for string|int|null arguments in array_column() 2020-05-02 19:50:51 +02:00
George Peter Banyard 7b74fc7a7b Add Fast ZPP string|int type check 2020-05-02 19:50:51 +02:00
Christoph M. Becker 5a628402a0 Don't raise bogus warning if writing completely failed 2020-05-02 16:32:29 +02:00
Nikita Popov ba54a46df4 Remove is_persistent flag from proc_open implementation
We don't support persistent proc_open handles and have no plan
to suppor them. The mixture of persistent and non-persistent
allocations functions in this code is somewhat confusing to read.
2020-05-02 15:33:29 +02:00
Máté Kocsis ffcc8135e2 Convert UNKNOWN default values to null in ext/date
Closes GH-5509
2020-05-02 11:05:37 +02:00
Máté Kocsis 089d8cb03c Convert UNKNOWN default values to null in ext/calendar 2020-05-02 11:05:27 +02:00
Máté Kocsis 8a41c9e025 Convert UNKNOWN default values to null in ext/bcmath 2020-05-02 11:05:19 +02:00
Tyson Andre d63eca285a Fix miscellaneous typos in code comments/var names
Closes GH-5501
2020-05-01 15:49:05 +02:00
Máté Kocsis 31a626cf7e Remove the deprecated is_real() function
Closes GH-5506
2020-05-01 15:33:58 +02:00
Christoph M. Becker 1d20443679 Merge branch 'PHP-7.4'
* PHP-7.4:
  Fix #79528: Different object of the same xml between 7.4.5 and 7.4.4
2020-05-01 12:42:09 +02:00
Christoph M. Becker 9b9252c667 Merge branch 'PHP-7.3' into PHP-7.4
* PHP-7.3:
  Fix #79528: Different object of the same xml between 7.4.5 and 7.4.4
2020-05-01 12:40:37 +02:00
Christoph M. Becker 54148fd686 Fix #79528: Different object of the same xml between 7.4.5 and 7.4.4
Revert "Fix #61597: SXE properties may lack attributes and content"

This reverts commit 7c081db885.
2020-05-01 12:37:39 +02:00
Alex Dowad 7b32d176d2 Avoid spurious failures of MySQL INSERT packet overflow test
This test creates a MySQL table called 'test'. In several cases, I have seen a spurious
test failure (in CI) with an error message saying: "table 'test' already exists".

It may be that another test had used a table with the same name and not cleaned it out
correctly. Or maybe we have multiple tests running in parallel in some CI environments,
or the same test DB being used for multiple runs of the test suite.

In any case, change the table name so it is exclusive to this test case only. Also, if
the test table exists at the beginning of the test, drop it.

Closes GH-5479
2020-05-01 12:25:42 +02:00
Alex Dowad 86ed93c230 Try to make regression test for Bug #69900 consistent
It has been observed that in rare cases, this regression test has spurious failures in CI.
Try increasing the threshold for failure a bit and see if this makes it pass consistently.
2020-05-01 12:25:30 +02:00
Tyson Andre 54febdbc7d Fix other typos in param name/code comments
Closes GH-5502
2020-05-01 12:23:16 +02:00