]>
granicus.if.org Git - php/log
Christoph M. Becker [Mon, 13 Jan 2020 17:49:38 +0000 (18:49 +0100)]
Merge branch 'PHP-7.4'
* PHP-7.4:
Fix #79106: PDO may fetch wrong column indexes with PDO::FETCH_BOTH
Christoph M. Becker [Mon, 13 Jan 2020 17:48:30 +0000 (18:48 +0100)]
Merge branch 'PHP-7.3' into PHP-7.4
* PHP-7.3:
Fix #79106: PDO may fetch wrong column indexes with PDO::FETCH_BOTH
Christoph M. Becker [Mon, 13 Jan 2020 12:34:06 +0000 (13:34 +0100)]
Fix #79106: PDO may fetch wrong column indexes with PDO::FETCH_BOTH
Column names can be numeric strings, so we have to make sure to insert
the column values with the appropriate numeric keys, instead of adding
them.
Dmitry Stogov [Mon, 13 Jan 2020 13:25:42 +0000 (16:25 +0300)]
typo
Christoph M. Becker [Mon, 13 Jan 2020 12:24:12 +0000 (13:24 +0100)]
Merge branch 'PHP-7.4'
* PHP-7.4:
Fix #79084: mysqlnd may fetch wrong column indexes with MYSQLI_BOTH
Christoph M. Becker [Mon, 13 Jan 2020 12:22:43 +0000 (13:22 +0100)]
Merge branch 'PHP-7.3' into PHP-7.4
* PHP-7.3:
Fix #79084: mysqlnd may fetch wrong column indexes with MYSQLI_BOTH
Christoph M. Becker [Mon, 13 Jan 2020 10:47:40 +0000 (11:47 +0100)]
Fix #79084: mysqlnd may fetch wrong column indexes with MYSQLI_BOTH
Column names can be numeric strings, so we have to make sure to insert
the column values with the appropriate numeric keys, instead of adding
them.
Nikita Popov [Mon, 13 Jan 2020 12:12:55 +0000 (13:12 +0100)]
Try to fix ZTS build
Nikita Popov [Mon, 13 Jan 2020 11:44:16 +0000 (12:44 +0100)]
Use helper in one more place
Nikita Popov [Mon, 13 Jan 2020 11:42:51 +0000 (12:42 +0100)]
Fix build
Dmitry Stogov [Mon, 13 Jan 2020 11:27:35 +0000 (14:27 +0300)]
Improve access to zend_map_ptr data
Nikita Popov [Mon, 13 Jan 2020 11:06:23 +0000 (12:06 +0100)]
Handle one more case I missed
Nikita Popov [Mon, 13 Jan 2020 10:34:04 +0000 (11:34 +0100)]
Make class name references use the class_name production
Throw a compile error for "static" references instead, where it
isn't already the case.
Also extract the code that does that -- we have quite a few places
where we get a const class ref and require it to be default.
Nikita Popov [Mon, 13 Jan 2020 10:23:30 +0000 (11:23 +0100)]
Don't use yystrlen()
This is unnecessary and not available when GLR is used.
Islam Israfilov [Sat, 11 Jan 2020 10:34:05 +0000 (10:34 +0000)]
Fixed #78385: Distinguish absent/empty query/fragment
http://example.com/foo => query = null, fragment = null
http://example.com/foo? => query = "", fragment = null
http://example.com/foo# => query = null, fragment = ""
http://example.com/foo?# => query = "", fragment = ""
Closes GH-5078.
Nikita Popov [Mon, 13 Jan 2020 09:10:16 +0000 (10:10 +0100)]
Merge branch 'PHP-7.4'
* PHP-7.4:
Fix test
Nikita Popov [Mon, 13 Jan 2020 09:09:58 +0000 (10:09 +0100)]
Fix test
Hopefully (32-bit)
Christoph M. Becker [Sat, 11 Jan 2020 10:22:30 +0000 (11:22 +0100)]
Merge branch 'PHP-7.4'
* PHP-7.4:
Bring back test case support for older MySQL versions
Christoph M. Becker [Sat, 11 Jan 2020 09:36:52 +0000 (10:36 +0100)]
Bring back test case support for older MySQL versions
These test cases have recently been adjusted to work with MySQL 8[1],
but some older, but still supported database versions, such as MySQL
5.6, still need the password to be sent hashed, so we fall back to
using `PASSWORD()`, if the `SET PASSWORD` query fails without it.
[1] <http://git.php.net/?p=php-src.git;a=commit;h=
b0efd18f7844da29931737b8a1cf461c7493e168 >.
George Peter Banyard [Fri, 10 Jan 2020 14:33:03 +0000 (15:33 +0100)]
Remove dead code and unused DEFINEs
Closes GH-5073
Christoph M. Becker [Fri, 10 Jan 2020 19:02:16 +0000 (20:02 +0100)]
Merge branch 'PHP-7.4'
* PHP-7.4:
Fix test cases which fail on Windows debug builds
Christoph M. Becker [Fri, 10 Jan 2020 19:01:28 +0000 (20:01 +0100)]
Merge branch 'PHP-7.3' into PHP-7.4
* PHP-7.3:
Fix test cases which fail on Windows debug builds
Christoph M. Becker [Mon, 11 Nov 2019 11:14:05 +0000 (12:14 +0100)]
Fix test cases which fail on Windows debug builds
We use the portable {TMP} instead of the hard-coded /tmp, and skip
mysqli_debug_append.phpt on Windows, because unlinking the trace file
while the connection is still open won't work there.
(cherry picked from commit
60081ca20d5701111de5f94ae64909b1cc265f1e )
Nikita Popov [Fri, 10 Jan 2020 16:38:39 +0000 (17:38 +0100)]
Merge branch 'PHP-7.4'
* PHP-7.4:
Remove unnecessary whitespace sensitivtiy from some tests
Nikita Popov [Fri, 10 Jan 2020 16:36:46 +0000 (17:36 +0100)]
Remove unnecessary whitespace sensitivtiy from some tests
Christoph M. Becker [Fri, 10 Jan 2020 16:17:37 +0000 (06:17 +1400)]
Merge branch 'PHP-7.4'
* PHP-7.4:
Fix test for Windows ZTS builds
Christoph M. Becker [Fri, 10 Jan 2020 16:16:03 +0000 (06:16 +1400)]
Merge branch 'PHP-7.3' into PHP-7.4
* PHP-7.3:
Fix test for Windows ZTS builds
Christoph M. Becker [Fri, 10 Jan 2020 16:11:24 +0000 (06:11 +1400)]
Fix test for Windows ZTS builds
Cf. <https://bugs.php.net/bug.php?id=61685#
1578672905 >.
Nikita Popov [Fri, 10 Jan 2020 11:01:42 +0000 (12:01 +0100)]
Make constant() error handling consistent with plain const lookup
This means we get an Error exception and a much better error
message indicating the root cause (e.g. accessing a private class
constant).
Nikita Popov [Fri, 10 Jan 2020 10:47:35 +0000 (11:47 +0100)]
Move undefined constant error into get_constant_ex
All the other error conditions are already handled in there, so
this one should be as well.
George Peter Banyard [Fri, 10 Jan 2020 01:53:05 +0000 (02:53 +0100)]
Remove unused delimiter parameter in php_fgetcsv_lookup_trailing_spaces subroutine.
Christoph M. Becker [Thu, 9 Jan 2020 18:03:43 +0000 (19:03 +0100)]
Merge branch 'PHP-7.4'
* PHP-7.4:
Silence potential taskkill error messages
Christoph M. Becker [Thu, 9 Jan 2020 17:58:17 +0000 (18:58 +0100)]
Silence potential taskkill error messages
That test is still intermittently failing, because failure to kill the
child process is reported. Therefore we silence these error messages.
Nikita Popov [Thu, 9 Jan 2020 17:55:31 +0000 (18:55 +0100)]
Convert infallible mysqli checks to asserts
Nikita Popov [Thu, 9 Jan 2020 16:16:29 +0000 (17:16 +0100)]
Remove unused MYSQLI_STATUS_CLEARED
Christoph M. Becker [Thu, 9 Jan 2020 17:40:58 +0000 (18:40 +0100)]
Fix test
The typo in the echoed string had been fixed in master; fix the
expectation as well.
Christoph M. Becker [Thu, 9 Jan 2020 16:44:41 +0000 (17:44 +0100)]
Merge branch 'PHP-7.4'
* PHP-7.4:
Fix useless tests
Christoph M. Becker [Thu, 9 Jan 2020 14:19:56 +0000 (15:19 +0100)]
Fix useless tests
These tests are certainly not supposed to fail due to a typo in the
class names, but expect this failure. We fix the typos and the
expectations.
Christoph M. Becker [Sun, 5 Jan 2020 19:26:35 +0000 (20:26 +0100)]
Allows further tests to run on Windows
Christoph M. Becker [Sun, 5 Jan 2020 18:28:34 +0000 (19:28 +0100)]
Use IS_WINDOWS
Christoph M. Becker [Sun, 5 Jan 2020 18:26:39 +0000 (19:26 +0100)]
Replace fakemail with minimal PHP script
Christoph M. Becker [Sun, 5 Jan 2020 15:46:27 +0000 (16:46 +0100)]
Unify mail related tests for *nix and Windows
Currently mail related tests are split for *nix and Windows (if there
are even Windows versions). The basic difference is that the *nix
variants set the INI directive sendmail_path to just write the email to
disk, while the Windows tests use ext/imap. The latter tests are way
more verbose, and such duplicated tests are generally a pain point.
Furthermore, the Windows tests are much slower, and could not be run
without ext/imap being available.
We therefore introduce a small fakemail application, which basically
works like `tee <path> >/dev/null`, and which will be shipped with the
Windows tests packs. fakemail.exe would also need to be added to the
PHP binary SDK, so these tests could be run during developments.
To cater to the remaining differences, we also introduce support for
`{MAIL:<path>}` placeholders in the INI sections to run-tests.php. How
to use this can be seen in mail_basic.phpt, which is currently the only
modified test case, because these tests are yet supposed to fail on
Windows, due to the missing fakemail.exe in the PHP SDK.
Nikita Popov [Thu, 9 Jan 2020 09:20:28 +0000 (10:20 +0100)]
Merge branch 'PHP-7.4'
* PHP-7.4:
Increase select timeout in FPM tester
Nikita Popov [Thu, 9 Jan 2020 09:19:02 +0000 (10:19 +0100)]
Increase select timeout in FPM tester
Let's see if that helps with the recent failure spree on Azure.
Christoph M. Becker [Thu, 9 Jan 2020 08:26:58 +0000 (09:26 +0100)]
Merge branch 'PHP-7.4'
* PHP-7.4:
Fix #79086: Bump version not applied
Christoph M. Becker [Thu, 9 Jan 2020 08:19:52 +0000 (09:19 +0100)]
Fix #79086: Bump version not applied
We must not forget to update the version in configure.ac as well.
George Peter Banyard [Sun, 8 Dec 2019 12:30:46 +0000 (13:30 +0100)]
Convert some warnings to Errors in BZip2
Closes GH-4984
George Peter Banyard [Sun, 8 Dec 2019 13:15:27 +0000 (14:15 +0100)]
Convert some warnings to Error in zlib extension
Closes GH-4985
George Peter Banyard [Wed, 8 Jan 2020 23:38:47 +0000 (00:38 +0100)]
[ci skip] Update UPGRADING
Christoph M. Becker [Wed, 8 Jan 2020 23:17:14 +0000 (00:17 +0100)]
Avoid superfluous assignments
These values are already set via the initializers.
Christoph M. Becker [Wed, 8 Jan 2020 17:43:35 +0000 (18:43 +0100)]
Merge branch 'PHP-7.4'
* PHP-7.4:
Fix #79078: Hypothetical use-after-free in curl_multi_add_handle()
Christoph M. Becker [Wed, 8 Jan 2020 17:31:10 +0000 (18:31 +0100)]
Merge branch 'PHP-7.3' into PHP-7.4
* PHP-7.3:
Fix #79078: Hypothetical use-after-free in curl_multi_add_handle()
Christoph M. Becker [Wed, 8 Jan 2020 10:52:24 +0000 (11:52 +0100)]
Fix #79078: Hypothetical use-after-free in curl_multi_add_handle()
To avoid this, we have to verify the handlers already in
`curl_multi_add_handle()`, not only in `curl_multi_exec()`.
Christoph M. Becker [Wed, 8 Jan 2020 17:27:53 +0000 (18:27 +0100)]
Merge branch 'PHP-7.4'
* PHP-7.4:
Bump version
Christoph M. Becker [Wed, 8 Jan 2020 17:26:14 +0000 (18:26 +0100)]
Bump version
Christoph M. Becker [Wed, 8 Jan 2020 15:56:28 +0000 (16:56 +0100)]
Merge branch 'PHP-7.4'
* PHP-7.4:
Extract function
Christoph M. Becker [Wed, 8 Jan 2020 15:54:31 +0000 (16:54 +0100)]
Extract function
As suggested by Nikita[1].
[1] <https://github.com/php/php-src/pull/5045#discussion_r364265013>
Nikita Popov [Wed, 8 Jan 2020 15:32:00 +0000 (16:32 +0100)]
Merge branch 'PHP-7.4'
* PHP-7.4:
Revert "Display a message if select in FPM test timeouts"
Nikita Popov [Wed, 8 Jan 2020 15:31:33 +0000 (16:31 +0100)]
Revert "Display a message if select in FPM test timeouts"
This reverts commit
e2361498d519561e7eb5b73d138c1eaa80da2a20 .
Ooops, this occurs normally during some tests, but I didn't notice
because I have slow tests disabled...
Nikita Popov [Wed, 8 Jan 2020 14:57:21 +0000 (15:57 +0100)]
Merge branch 'PHP-7.4'
* PHP-7.4:
Display a message if select in FPM test timeouts
Nikita Popov [Wed, 8 Jan 2020 14:56:37 +0000 (15:56 +0100)]
Display a message if select in FPM test timeouts
Nikita Popov [Wed, 8 Jan 2020 13:32:11 +0000 (14:32 +0100)]
Fix #49555: Improve "function must be a string" error message
Be more specific for the individual cases and provide relevant
type information.
Nikita Popov [Wed, 8 Jan 2020 13:26:27 +0000 (14:26 +0100)]
Refer to method rather than function name in error message
Nikita Popov [Wed, 8 Jan 2020 13:18:14 +0000 (14:18 +0100)]
Fix #65274: Add class name to undef class constant error
George Peter Banyard [Tue, 7 Jan 2020 21:55:43 +0000 (22:55 +0100)]
Add warning and convert to exception in string offset assignment:
Convert the empty string assignment to an Error as per RFC [1]
Add a warning that only the first byte will be assigned to the offset if provided
a needle that is longer than one byte.
[1] https://wiki.php.net/rfc/engine_warnings
Closes GH-5063
George Peter Banyard [Sat, 7 Dec 2019 01:44:34 +0000 (02:44 +0100)]
Allow empty needles in mb_strpos and mb_strstr function family.
MBstring analogous implementation to
6d578482a933be7597b686b59a935b316161d251
Closes GH-4977
George Peter Banyard [Tue, 7 Jan 2020 20:51:34 +0000 (21:51 +0100)]
Add warning and convert to exception in string offset assignment:
Convert the empty string assignment to an Error as per RFC [1]
Add a warning that only the first byte will be assigned to the offset if provided
a needle that is longer than one byte.
[1] https://wiki.php.net/rfc/engine_warnings
Christoph M. Becker [Tue, 7 Jan 2020 14:29:51 +0000 (15:29 +0100)]
Merge branch 'PHP-7.4'
* PHP-7.4:
Make test more resilient
Christoph M. Becker [Tue, 7 Jan 2020 14:28:48 +0000 (15:28 +0100)]
Make test more resilient
Depending on the libcurl version and perhaps configuration, it may show
additional info (due to `CURLOPT_VERBOSE` being activated), which we
have to ignore, to avoid spurious test failures.
Nikita Popov [Tue, 7 Jan 2020 13:53:25 +0000 (14:53 +0100)]
Renumber zval types, clarify allowed overlap
Make it clear that types used for type declarations can overlap
with the rest, and can also overlap in MAY_BE space.
This makes things more robust against the addition of new primitive
types.
Christoph M. Becker [Tue, 7 Jan 2020 13:27:34 +0000 (14:27 +0100)]
Merge branch 'PHP-7.4'
* PHP-7.4:
Increase sleep() time in test case
Christoph M. Becker [Tue, 7 Jan 2020 13:24:55 +0000 (14:24 +0100)]
Increase sleep() time in test case
Apparently, the former increase to `sleep(2)` helped somewhat, but
still the test fails occassionally.
Christoph M. Becker [Tue, 7 Jan 2020 10:13:24 +0000 (11:13 +0100)]
Merge branch 'PHP-7.4'
* PHP-7.4:
Bump version
Christoph M. Becker [Tue, 7 Jan 2020 10:10:55 +0000 (11:10 +0100)]
Merge branch 'PHP-7.3' into PHP-7.4
* PHP-7.3:
Bump version
Christoph M. Becker [Tue, 7 Jan 2020 10:03:19 +0000 (11:03 +0100)]
Bump version
Nikita Popov [Mon, 6 Jan 2020 21:42:31 +0000 (22:42 +0100)]
Merge branch 'PHP-7.4'
* PHP-7.4:
Remove support for preloading on Windows
Nikita Popov [Tue, 10 Dec 2019 13:29:58 +0000 (14:29 +0100)]
Remove support for preloading on Windows
Due to ASLR restrictions, preloading on Windows does not work with
any code that has preloading dependencies on internal classes.
This effectively makes it unusable for any non-trivial codebase.
Instead of pretending like preloading is going to work, only to
make people realize that it really doesn't once they get beyond
a dummy example, we disable support for preloading on Windows
entirely.
Closes GH-4999.
Nikita Popov [Mon, 6 Jan 2020 17:47:44 +0000 (18:47 +0100)]
Merge branch 'PHP-7.4'
* PHP-7.4:
Throw Error when referencing uninit typed prop in __sleep
Nikita Popov [Fri, 3 Jan 2020 14:35:10 +0000 (15:35 +0100)]
Throw Error when referencing uninit typed prop in __sleep
Previously this generated a notice, but would likely generate an
Error when unserializing.
Now we treat it with the same distinction as direct property
accesses, i.e. referencing an unset/undefined normal property
stays a notice, while a typed property becomes an Error exception.
This fixed bug #79002.
Closes GH-5050.
Christoph M. Becker [Mon, 6 Jan 2020 14:34:22 +0000 (15:34 +0100)]
[ci skip] Merge branch 'PHP-7.4'
Empty merge.
Christoph M. Becker [Mon, 6 Jan 2020 14:32:40 +0000 (15:32 +0100)]
[ci skip] Merge branch 'PHP-7.3' into PHP-7.4
Empty merge.
Christoph M. Becker [Mon, 6 Jan 2020 14:19:34 +0000 (15:19 +0100)]
Revert "Extend CURLFile to support streams"
This reverts commit
17a9f1401aeb35fe1e3657b38102a410d151d42f , because
this commit would break ABI, and also due to bug #79013.
We keep the commit for PHP 7.4+, though.
Christoph M. Becker [Mon, 6 Jan 2020 13:51:14 +0000 (14:51 +0100)]
Merge branch 'PHP-7.4'
* PHP-7.4:
Fix #54298: Using empty additional_headers adding extraneous CRLF
Christoph M. Becker [Mon, 6 Jan 2020 13:48:22 +0000 (14:48 +0100)]
Merge branch 'PHP-7.3' into PHP-7.4
* PHP-7.3:
Fix #54298: Using empty additional_headers adding extraneous CRLF
Christoph M. Becker [Sun, 5 Jan 2020 14:15:09 +0000 (15:15 +0100)]
Fix #54298: Using empty additional_headers adding extraneous CRLF
If the header string is empty, we pass `NULL` to `php_mail()` to avoid
further checks on the string length.
Nikita Popov [Mon, 6 Jan 2020 13:43:05 +0000 (14:43 +0100)]
Rename skeleton stub file
Add the .php suffix
Christoph M. Becker [Mon, 6 Jan 2020 12:24:07 +0000 (13:24 +0100)]
Fix hypothetical segfault in gdTransformAffineCopy()
This has been reported to upstream[1], but since ext/gd never calls
`gdTransformAffineCopy()` for a palette image, it is not a bug for PHP.
Therefore we apply the fix to master only.
[1] <https://github.com/libgd/libgd/issues/586>
Nikita Popov [Mon, 6 Jan 2020 09:43:05 +0000 (10:43 +0100)]
Merge branch 'PHP-7.4'
* PHP-7.4:
Don't link against openssl 1.1 in curl
Nikita Popov [Mon, 6 Jan 2020 09:40:43 +0000 (10:40 +0100)]
Don't link against openssl 1.1 in curl
OpenSSL 1.1 does not need crypto locking callbacks, so avoid
detecting and linking against it in the first place.
Christoph M. Becker [Mon, 6 Jan 2020 09:39:00 +0000 (10:39 +0100)]
Merge branch 'PHP-7.4'
* PHP-7.4:
Fix #79068: gdTransformAffineCopy() changes interpolation method
Christoph M. Becker [Mon, 6 Jan 2020 09:38:08 +0000 (10:38 +0100)]
Merge branch 'PHP-7.3' into PHP-7.4
* PHP-7.3:
Fix #79068: gdTransformAffineCopy() changes interpolation method
Christoph M. Becker [Mon, 6 Jan 2020 09:33:47 +0000 (10:33 +0100)]
Fix #79068: gdTransformAffineCopy() changes interpolation method
We port
<https://github.com/libgd/libgd/commit/
9088591eae437358ee5b929adf82865e37e3001e >.
Nikita Popov [Mon, 6 Jan 2020 09:31:34 +0000 (10:31 +0100)]
Merge branch 'PHP-7.4'
* PHP-7.4:
Fix bug #79063: Curl openssl does not respect PKG_CONFIG_PATH
Clean up curl openssl check
Nikita Popov [Mon, 6 Jan 2020 09:29:41 +0000 (10:29 +0100)]
Fix bug #79063: Curl openssl does not respect PKG_CONFIG_PATH
Nikita Popov [Mon, 6 Jan 2020 09:16:42 +0000 (10:16 +0100)]
Clean up curl openssl check
Only set HAVE_CURL_OPENSSL flag, and remove Windows specific code,
as all of this is only relevant for OpenSSL < 1.1, which is not
used on Windows.
Christoph M. Becker [Mon, 6 Jan 2020 08:38:19 +0000 (09:38 +0100)]
Merge branch 'PHP-7.4'
* PHP-7.4:
Fix #79067: gdTransformAffineCopy() may use unitialized values
Christoph M. Becker [Mon, 6 Jan 2020 08:36:49 +0000 (09:36 +0100)]
Merge branch 'PHP-7.3' into PHP-7.4
* PHP-7.3:
Fix #79067: gdTransformAffineCopy() may use unitialized values
Christoph M. Becker [Mon, 6 Jan 2020 08:35:13 +0000 (09:35 +0100)]
Fix #79067: gdTransformAffineCopy() may use unitialized values
We port
<https://github.com/libgd/libgd/commit/
7a06c1669c563917bc48c464521e3de962ddb4e8 >.
Christoph M. Becker [Mon, 6 Jan 2020 07:53:50 +0000 (08:53 +0100)]
Remove useless else branch
Passing `NULL` as `gdTransformAffineGetImage()`'s `src_area` is fine,
but in this case there's no need to calculate the `rect`, and since
`pRect` has already been initialized to `NULL`, we can remove the whole
else branch.
Máté Kocsis [Sat, 4 Jan 2020 10:01:59 +0000 (11:01 +0100)]
Throw exception for unconstructed intl objects
Closes GH-5052