Commit Graph

118539 Commits

Author SHA1 Message Date
Xinchen Hui
e97a67963c drop use of extract_epi16 2020-05-09 12:28:49 +08:00
Xinchen Hui
af112f6572 Use SSE2 instructions do url_encode 2020-05-08 16:32:43 +08:00
Dmitry Stogov
6e2cd97b43 cleanup 2020-05-08 10:07:55 +03:00
Dmitry Stogov
c34d29db33 Change parameter meaning. 2020-05-08 01:24:02 +03:00
Dmitry Stogov
dcedc31979 Use proper "cost" 2020-05-08 00:56:03 +03:00
Dmitry Stogov
ef45d4d698 Avoid loop throgh side_exit from the first trace instruction. 2020-05-08 00:48:17 +03:00
Dmitry Stogov
5d9063a546 Fixed tracing JIT for CALL VM without global register variables 2020-05-07 23:41:48 +03:00
Nikita Popov
2414b3d775 Ensure ctype_string is NULL for C locale
We already document that this is the case, but currently it's only
true if setlocale() has not been called. Make sure ctype_string is
always NULL, even with an explicit "C" locale call, so we can
more efficiently check whether we are in the "C" locale.

Closes GH-5542.
2020-05-07 21:26:13 +02:00
Nikita Popov
d38f819647 Fix test file encoding
The mb_http_input_pass.phpt was intended to use the same encoding
as mb_http_input.phpt, not UTF-8.
2020-05-07 21:18:49 +02:00
Dmitry Stogov
9af2f0fa78 More accurate tracing JIT for RETURN with unknown return address 2020-05-07 22:01:59 +03:00
Nikita Popov
3f76947303 Rename locale_string to ctype_string
To make it more obvious that this only refers to the LC_CTYPE
locale.
2020-05-07 18:45:03 +02:00
Nikita Popov
5ef65dd114 Remove redundant htmlentities() tests
Test 04 and 15 are the same as 02 and 03, just for different
encodings. They don't add value, but their execution depends
on available locales, so they're easy to miss...
2020-05-07 18:38:25 +02:00
Xinchen Hui
5d8cf36022 Folder marks 2020-05-07 23:03:25 +08:00
Nikita Popov
65e2a05a17 Really fix test case 2020-05-07 16:51:05 +02:00
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