Christoph M. Becker
fce0cd4a88
Fix test case
2020-05-07 16:47:38 +02:00
Tyson Andre
9f8f84adbc
Evaluate str_starts_with and str_ends_with on constants
...
When both arguments are strings,
this is guaranteed not to emit notices.
Closes GH-5539
2020-05-07 16:24:03 +02:00
Nikita Popov
4a512625a0
Don't respect mbstring.internal_encoding in htmlentities()
...
htmlentities() has nothing to do with mbstring and should not
depend on its ini settings. It should only respect the global
default_charset and internal_encoding settings. This is exactly
why they were introduced...
2020-05-07 15:54:54 +02:00
Nikita Popov
c50cfc4d3d
Add quiet parameter to internal HTML entities API
...
In some places, we need to make sure that no warnings are thrown
due to unknown encoding. The error reporting code tried to avoid
this by determining a "safe charset", but this introduces subtle
discrepancies in which charset is picked (normally
internal_encoding takes precedence). Avoid this by suppressing
the warning in the first place.
While here, use the fallback logic to print error messages with
substitution characters more consistently, to avoid skipping
parts of the error message entirely.
2020-05-07 15:46:08 +02:00
Nikita Popov
d6ac8b236f
Clean up determine_charset() implementation
...
And drop code related to locale-based charset guessing,
which is no longer in use.
2020-05-07 14:58:24 +02:00
Nikita Popov
481b7421f3
Throw warning if invalid internal_encoding ini is specified
2020-05-07 14:44:13 +02:00
Dmitry Stogov
98acdbff18
Prevent taking side traces for exceptional cases. Always exit to VM interpreter.
2020-05-07 12:49:01 +03:00
Nikita Popov
217f6013b3
Remove no_language from mbfl_string
...
This is not actually used for anything and just causes confusion.
2020-05-07 11:36:57 +02:00
Nikita Popov
226d9dd30a
Only allow "pass" as input/output encoding
...
"pass" is not a real encoding, it just means "don't perform any
conversion". Using it as an internal encoding or passing it to
any of the mbstring() function will not work (and on master commonly
assert).
2020-05-07 11:19:14 +02:00
Máté Kocsis
b67f699dcd
Rename the recently introduced Sysvsem class to SysvSemaphore
2020-05-07 10:21:58 +02:00
Nikita Popov
5bfa9598f4
Return false from failed mb_convert_variables()
...
If we fail to detect the encoding return false, just like
mb_convert_encoding() does, and the implementation here clearly
intended. Previously the "pass" pseudo-incoding was returned.
2020-05-07 10:16:46 +02:00
Christoph M. Becker
1a95ed0b33
Enable test on Windows
2020-05-07 09:20:15 +02:00
Xinchen Hui
dd9d0a96d1
Fixed false alarm about tmp_name maybe unitialized
2020-05-07 14:16:02 +08:00
Dmitry Stogov
7977cd1c19
Fixed comment
2020-05-07 09:05:33 +03:00
Nikita Popov
71f48260af
Fix assertion failure when failing to detect encoding
...
Looks like prior to 7.3 this just passed the original string
through. Since 7.3 it returns false. Let's stick with that
behavior.
2020-05-06 22:56:01 +02:00
Dmitry Stogov
9d869f24d4
Avoid Program Counter guard in side trace started from Fake Init Fcall guard.
2020-05-06 23:16:45 +03:00
George Peter Banyard
038502b92a
Use int|string Fast ZPP macro in Reflection
...
Moreover, throw a more appropriate ValueError in case the integer
position provided is less than 0.
Closes GH-5513
2020-05-06 21:51:59 +02:00
Dmitry Stogov
b63eff17ff
Initial support for IS_INDIRECT. Avoid type guards for IS_INDIRECT.
2020-05-06 22:27:38 +03:00
Máté Kocsis
bce8c8fb27
Promote warning to exception in ZipArchive::extractTo()
...
Closes GH-5516
2020-05-06 19:22:52 +02:00
Máté Kocsis
650da66e2d
Fix UNKNOWN default values in ext/spl
2020-05-06 19:15:39 +02:00
Máté Kocsis
35a10fb8e8
Fix UNKNOWN default values in ext/sqlite3
2020-05-06 19:15:39 +02:00
Máté Kocsis
60412c37ae
Fix UNKNOWN default values in ext/xml
2020-05-06 19:15:39 +02:00
Máté Kocsis
89d1707587
Fix UNKNOWN default values in ext/xsl
2020-05-06 19:15:38 +02:00
Máté Kocsis
daa5b26456
Fix UNKNOWN default values in ext/zip
2020-05-06 19:15:34 +02:00
Máté Kocsis
78dda268eb
Fix ZPP order in ext/zip
2020-05-06 19:14:36 +02:00
George Peter Banyard
389c2b4303
Drop BF_ASM constant as it's always 0
...
Closes GH-5531
2020-05-06 17:55:32 +02:00
Christoph M. Becker
822c489961
Remove out-dated comments
2020-05-06 17:25:49 +02:00
Máté Kocsis
eab54d2382
Convert resource to object in ext/sysvsem
...
Closes GH-5508
2020-05-06 15:42:41 +02:00
Dmitry Stogov
776b1aefc8
Careful cleanup
2020-05-06 16:26:36 +03:00
Remi Collet
f987219c69
add myself as enchant maintainer
2020-05-06 13:18:35 +02:00
Christoph M. Becker
c1ad9163b8
Fix enchant stub
2020-05-06 13:16:50 +02:00
Remi Collet
5f5dd994d4
enchant: bump license version
2020-05-06 13:13:19 +02:00
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