| Commit message (Collapse) | Author | Age | Files | Lines |
| |
|
|
|
|
| |
We backport the slightly modified variant from master.
|
| |
|
|
|
|
| |
Replace an existing entry for a given name only if we have a match.
|
|
|
|
|
|
|
| |
PCRE only validates the string starting from the start offset
(minus maximum look-behind, but let's ignore that), so we can
only remember that the string is fully valid UTF-8 is the original
start offset is zero.
|
|
|
|
|
|
| |
We need not just the whole string to be UTF-8, but the start
position to be on a character boundary as well. Check this by
looking for a continuation byte.
|
|\
| |
| |
| |
| | |
* PHP-7.3:
Fixed bug #79188
|
| | |
|
|\ \
| |/
| |
| |
| | |
* PHP-7.3:
Fix #78853: preg_match() may return integer > 1
|
| |
| |
| |
| |
| |
| |
| | |
Commit 54ebebd[1] optimized the match loop, but for this case it has
been overlooked, that we must only loop if we're doing global matching.
[1] <http://git.php.net/?p=php-src.git;a=commit;h=54ebebd686255c5f124af718c966edb392782d4a>
|
|\ \
| |/
| |
| |
| | |
* PHP-7.3:
Fix php_pcre_mutex_free()
|
| |
| |
| |
| |
| |
| | |
We should only set the mutex to NULL if we actually freed it.
Due to missing braces non-main threads may currently set it to
NULL first.
|
| |
| |
| |
| |
| | |
This test is not supposed to run on non Windows systems; otherwise it
would try to send an email.
|
|\ \
| |/ |
|
| |\ |
|
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | | |
A new function `pcre_get_compiled_regex_cache_ex()` is introduced,
which allows to compile regexp pattern using the "C" locale instead
of a current locale.
This will be needed to replace setlocale() usage in fileinfo,
which is not thread-safe.
|
|\ \ \
| |/ / |
|
| | |
| | |
| | |
| | |
| | | |
Backports parts of https://vcs.pcre.org/pcre2?view=revision&revision=1175
fixing https://bugs.exim.org/show_bug.cgi?id=2453.
|
|\ \ \
| |/ / |
|
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | | |
Print a more informative message that indicates that this is
likely a permission issue, and also indicate that pcre.jit=0
can be used to work around it.
Also automatically disable the JIT, so that this message is
only shown once.
See bug #78630.
|
|\ \ \
| |/ / |
|
| | |
| | |
| | |
| | |
| | | |
This may be printed in a different order, and we don't care about
it anyway.
|
|\ \ \
| |/ / |
|
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | | |
Use MAP_JIT only when running under hardened runtime, because MAP_JIT
is incompatible with fork().
The check is based on
https://github.com/mono/mono/commit/f879e35e3ed7496d819bd766deb8be6992d068ed.
|
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | | |
This is intended to fix the primary issue from bug #77260.
Prior to macOS 10.14 multiple MAP_JIT segments were not permitted,
leading to mmap failures and corresponding "no more memory" errors
on macOS 10.13.
|
|\ \ \
| |/ /
| | |
| | |
| | | |
* PHP-7.3:
Fix test
|
| | |
| | |
| | |
| | |
| | | |
Not sure why offset changed... probably different PCRE version calculates
them in different way.
|
|\ \ \
| |/ /
| | |
| | |
| | | |
* PHP-7.3:
Fix #75457: heap-use-after-free in php7.0.25
|
| |\ \
| | |/
| | |
| | |
| | | |
* PHP-7.2:
Fix #75457: heap-use-after-free in php7.0.25
|
| | |\
| | | |
| | | |
| | | |
| | | | |
* PHP-7.1:
Fix #75457: heap-use-after-free in php7.0.25
|
| | | |
| | | |
| | | |
| | | | |
Backport <https://vcs.pcre.org/pcre?view=revision&revision=1638>.
|
| | | |
| | | |
| | | |
| | | |
| | | |
| | | |
| | | |
| | | |
| | | |
| | | |
| | | |
| | | |
| | | |
| | | |
| | | |
| | | |
| | | |
| | | |
| | | |
| | | |
| | | |
| | | |
| | | | |
This patch adds missing newlines, trims multiple redundant final
newlines into a single one, and trims redundant leading newlines in all
*.phpt sections.
According to POSIX, a line is a sequence of zero or more non-' <newline>'
characters plus a terminating '<newline>' character. [1] Files should
normally have at least one final newline character.
C89 [2] and later standards [3] mention a final newline:
"A source file that is not empty shall end in a new-line character,
which shall not be immediately preceded by a backslash character."
Although it is not mandatory for all files to have a final newline
fixed, a more consistent and homogeneous approach brings less of commit
differences issues and a better development experience in certain text
editors and IDEs.
[1] http://pubs.opengroup.org/onlinepubs/9699919799/basedefs/V1_chap03.html#tag_03_206
[2] https://port70.net/~nsz/c/c89/c89-draft.html#2.1.1.2
[3] https://port70.net/~nsz/c/c99/n1256.html#5.1.1.2
|
| | | | |
|
| | | |
| | | |
| | | |
| | | |
| | | |
| | | |
| | | |
| | | |
| | | |
| | | |
| | | |
| | | |
| | | |
| | | |
| | | |
| | | |
| | | |
| | | |
| | | |
| | | |
| | | |
| | | | |
This patch adds missing newlines, trims multiple redundant final
newlines into a single one, and trims redundant leading newlines.
According to POSIX, a line is a sequence of zero or more non-' <newline>'
characters plus a terminating '<newline>' character. [1] Files should
normally have at least one final newline character.
C89 [2] and later standards [3] mention a final newline:
"A source file that is not empty shall end in a new-line character,
which shall not be immediately preceded by a backslash character."
Although it is not mandatory for all files to have a final newline
fixed, a more consistent and homogeneous approach brings less of commit
differences issues and a better development experience in certain text
editors and IDEs.
[1] http://pubs.opengroup.org/onlinepubs/9699919799/basedefs/V1_chap03.html#tag_03_206
[2] https://port70.net/~nsz/c/c89/c89-draft.html#2.1.1.2
[3] https://port70.net/~nsz/c/c99/n1256.html#5.1.1.2
|
| | | | |
|
| | | |
| | | |
| | | |
| | | |
| | | |
| | | |
| | | |
| | | |
| | | |
| | | |
| | | |
| | | |
| | | |
| | | |
| | | |
| | | |
| | | |
| | | |
| | | |
| | | |
| | | |
| | | |
| | | |
| | | | |
This patch simplifies line endings tracked in the Git repository and
syncs them to all include the LF style instead of the CRLF files.
Newline characters:
- LF (\n) (*nix and Mac)
- CRLF (\r\n) (Windows)
- CR (\r) (old Mac, obsolete)
To see which line endings are in the index and in the working copy the
following command can be used:
`git ls-files --eol`
Git additionally provides `.gitattributes` file to specify if some files
need to have specific line endings on all platforms (either CRLF or LF).
Changed files shouldn't cause issues on modern Windows platforms because
also Git can do output conversion is core.autocrlf=true is set on
Windows and use CRLF newlines in all files in the working tree.
Unless CRLF files are tracked specifically, Git by default tracks all
files in the index using LF newlines.
|
| | | | |
|
|\ \ \ \
| |/ / /
| | | |
| | | |
| | | | |
* PHP-7.3:
ensure proper settings for test
|
| | | | |
|
| | | | |
|
|\ \ \ \
| |/ / /
| | | |
| | | |
| | | | |
* PHP-7.3:
Remove upgrade-pcre.php script
|
| | | |
| | | |
| | | |
| | | |
| | | | |
This script has not been updated for PCRE2, and it's mostly useless
anyway. Therefore we remove it altogether.
|
|\ \ \ \
| |/ / /
| | | |
| | | |
| | | | |
* PHP-7.3:
Fix #78338: Array cross-border reading in PCRE
|
| | | |
| | | |
| | | |
| | | | |
We backport r1092 from pcre2.
|
| | | |
| | | |
| | | |
| | | |
| | | | |
When external PCRE library version is of format ##.##-RC# the check
failed.
|
| | | |
| | | |
| | | |
| | | | |
Closes GH-4447
|
| | | | |
|
| | | |
| | | |
| | | |
| | | |
| | | |
| | | |
| | | |
| | | |
| | | | |
Also adds an --asan flag to run-tests.php to setup all the necessary
environment variables. Some tests are marked as skipped because they
are incompatible with asan or too slow.
I'm basing this on the DEBUG_ZTS build, which seems to give us the
most mileage.
|
|\ \ \ \
| |/ / / |
|
| |\ \ \
| | |/ / |
|