History log of /php-src/NEWS (Results 2251 – 2275 of 15454)
Revision (<<< Hide revision tags) (Show revision tags >>>) Date Author Comments
(<<< Hide modified files)
(Show modified files >>>)
# 5fb5a739 12-Jul-2021 Christoph M. Becker

Merge branch 'PHP-7.4' into PHP-8.0

* PHP-7.4:
Fix #81243: Too much memory is allocated for preg_replace()


# a6b43086 12-Jul-2021 Christoph M. Becker

Fix #81243: Too much memory is allocated for preg_replace()

Trimming a potentially over-allocated string appears to be reasonable,
so we drop the condition altogether.

We also r

Fix #81243: Too much memory is allocated for preg_replace()

Trimming a potentially over-allocated string appears to be reasonable,
so we drop the condition altogether.

We also re-allocate twice the size needed in the first place, and not
roughly tripple the size.

Closes GH-7231.

show more ...

# 8fd747a2 11-Jul-2021 Aaron Piotrowski

Fiber ucontext support (#7226)

Co-authored-by: Martin Schröder <m.schroeder2007@gmail.com>

# bc39abe8 19-Jun-2021 Benjamin Eberlei

Fix #80097: Have ReflectionAttribute implement Reflector and __toString

Implement printing for ReflectionAttribute. Attributes aren't
printed as part of reflection output for other struc

Fix #80097: Have ReflectionAttribute implement Reflector and __toString

Implement printing for ReflectionAttribute. Attributes aren't
printed as part of reflection output for other structures (classes
etc) yet.

Closes GH-6117.

show more ...

# c6d4f608 06-Jul-2021 Ben Ramsey

The master branch is now for 8.1.0beta1

# d776413f 06-Jul-2021 Christoph M. Becker

Merge branch 'PHP-7.4' into PHP-8.0

* PHP-7.4:
Fix #81223: flock() only locks first byte of file


# 520c00a5 05-Jul-2021 Christoph M. Becker

Fix #81223: flock() only locks first byte of file

`flock()` should lock the whole file, like on other systems which use
mandatory locking. We cannot use `0` like for `flck.l_len`, so we

Fix #81223: flock() only locks first byte of file

`flock()` should lock the whole file, like on other systems which use
mandatory locking. We cannot use `0` like for `flck.l_len`, so we use
the largest number, what is valid according to the documentation:
<https://docs.microsoft.com/en-us/windows/win32/api/fileapi/nf-fileapi-lockfileex#remarks>.

Closes GH-7216.

show more ...

# 8071bd2f 05-Jul-2021 Christoph M. Becker

Merge branch 'PHP-7.4' into PHP-8.0

* PHP-7.4:
Fix #74264: grapheme_strrpos() broken for negative offsets


# 28c93763 05-Jul-2021 Christoph M. Becker

Fix #74264: grapheme_strrpos() broken for negative offsets

We must not assume that `usearch_last()` gives the proper result for
negative offsets. Instead we'd need to continue to search

Fix #74264: grapheme_strrpos() broken for negative offsets

We must not assume that `usearch_last()` gives the proper result for
negative offsets. Instead we'd need to continue to search backwards
(`usearch_previous`) until we find a proper match. However, apparently
searching backwards is broken, so we work around by searching forward
from the start of the string until we pass the `offset_pos`, and then
use the previous result.

Closes GH-7189.

show more ...

# 52cf7ab8 02-Jul-2021 Nikita Popov

Fix bug #80072: Root live tmpvars after GC

TMPVAR operands are destroyed using zval_ptr_dtor_nogc(), because
they usually cannot contain cycles. However, there are some rare
exceptio

Fix bug #80072: Root live tmpvars after GC

TMPVAR operands are destroyed using zval_ptr_dtor_nogc(), because
they usually cannot contain cycles. However, there are some rare
exceptions where this is possible, e.g. unserialize() return value.
In such cases we rely on the producing code to root the value. If
a GC run occurs between the rooting and consumption of the value,
we would end up leaking it. To avoid this, root all live TMPVAR
values after a GC run.

Closes GH-7210.

show more ...

# 4e66e6a7 02-Jul-2021 Nikita Popov

Merge branch 'PHP-7.4' into PHP-8.0

* PHP-7.4:
Fixed bug #80173


# bdc60fa7 02-Jul-2021 Nikita Popov

Fixed bug #80173

The analysis in the bug report wasn't correct (at least not in
this case -- there may still be a more general problem here),
the issue was that write_property return

Fixed bug #80173

The analysis in the bug report wasn't correct (at least not in
this case -- there may still be a more general problem here),
the issue was that write_property returned the original variable_ptr
rather than the zend_assign_to_variable() return value, which will
DEREF the variable before overwriting it.

show more ...

# 5b0a4690 01-Jul-2021 Christoph M. Becker

Merge branch 'PHP-7.4' into PHP-8.0

* PHP-7.4:
Fix #52093: openssl_csr_sign truncates $serial


# 334387bb 01-Jul-2021 Christoph M. Becker

Fix #52093: openssl_csr_sign truncates $serial

We use `ASN1_INTEGER_set_int64()` if supported[1], to avoid the
truncation of the integer.

[1] <https://www.openssl.org/docs/man1.

Fix #52093: openssl_csr_sign truncates $serial

We use `ASN1_INTEGER_set_int64()` if supported[1], to avoid the
truncation of the integer.

[1] <https://www.openssl.org/docs/man1.1.0/man3/ASN1_INTEGER_set_int64.html#HISTORY>

Closes GH-7209.

show more ...

# b976bc44 01-Jul-2021 Nikita Popov

Fixed bug #81208

The number of populated positional arguments is argc. i may also
include named args and thus try to dtor uninitialized zvals.

# 70b0330e 30-Jun-2021 Christoph M. Becker

Merge branch 'PHP-7.4' into PHP-8.0

* PHP-7.4:
Fix #73630: Built-in Weberver - overwrite $_SERVER['request_uri']


# d7db5701 30-Jun-2021 Christoph M. Becker

Fix #73630: Built-in Weberver - overwrite $_SERVER['request_uri']

The built-in Webserver's `on_path`, `on_query_string` and `on_url`
callbacks may be called multiple times from the parse

Fix #73630: Built-in Weberver - overwrite $_SERVER['request_uri']

The built-in Webserver's `on_path`, `on_query_string` and `on_url`
callbacks may be called multiple times from the parser; we must not
simply replace the old values, but need to concatenate the new values
instead.

This appears to be tricky for `on_path` due to the path normalization,
so we fail if the function is called again.

The built-in Webserver logs errors during request parsing to stderr,
but this is ignored by the php_cli_server framework, and apparently the
Webserver does not send a resonse at all in such cases (instead of an
4xx). Thus we can only check that a request with an overly long path
fails.

Closes GH-7207.

show more ...

# 65bd8d28 29-Jun-2021 Nikita Popov

Merge branch 'PHP-7.4' into PHP-8.0

* PHP-7.4:
Fix bug #80728: Don't reset the timeout on ini deactivate


# 98a21d1d 12-Feb-2021 Calvin Buckley

Fix bug #80728: Don't reset the timeout on ini deactivate

When the time limit for a script is changed, when the script ends,
its INI value will be reset. This calls the event handler for

Fix bug #80728: Don't reset the timeout on ini deactivate

When the time limit for a script is changed, when the script ends,
its INI value will be reset. This calls the event handler for the
timeout change, which will unset then reset the timeout. However,
this is done even if the script is done executing, and say, the CGI
or CLI web server process is idle.

This is probably incorrect, but isn't a problem on most platforms,
because PHP uses a timer that only ticks when the process is active
(that is, executing code). Since when it's idle, it's blocking on
listen/read, it won't tick because nothing executes. However, on
platforms where only the real-time timer is supported, (Cygwin/PASE)
it ticks regardless of if PHP is even executing. This means that the
idle processes are subject to timeouts from the INI reset on script
end.

This makes it so the timer is never set if the state is deactivating.
Testing with the CLI web server indicates the timer no longer
spuriously activates under PASE.

Closes GH-6683.

show more ...

# 53ea910d 29-Jun-2021 Christoph M. Becker

7.3.30 is next

# f5cba2d4 29-Jun-2021 Christoph M. Becker

[ci skip] Fix NEWS format

# 1bf2b04b 28-Jun-2021 Christoph M. Becker

Merge branch 'PHP-7.4' into PHP-8.0

* PHP-7.4:
Fix #68471: IntlDateFormatter fails for "GMT+00:00" timezone


# 1a01f781 23-Jun-2021 Christoph M. Becker

Fix #68471: IntlDateFormatter fails for "GMT+00:00" timezone

GMT+00:00 is recognized by ICU, and is normalized to GMT. There are no
issues when GMT+00:00 is passed to `IntlTimeZone::cre

Fix #68471: IntlDateFormatter fails for "GMT+00:00" timezone

GMT+00:00 is recognized by ICU, and is normalized to GMT. There are no
issues when GMT+00:00 is passed to `IntlTimeZone::createTimeZone()`,
but passing it to IntlDateFormatter::__construct() causes a failure,
since there is an additional check regarding the validity. While
checking the validity of the result of `TimeZone::createTimeZone()`[1]
is a good idea, comparing the IDs is overly restrictive. Instead we
just check that the timezone is supported by ICU.

[1] <https://unicode-org.github.io/icu-docs/apidoc/dev/icu4c/classicu_1_1TimeZone.html#a35da0507b62754ffe5d8d59c19775cdb>

Closes GH-7190.

show more ...

# b11785c5 25-Jun-2021 Cameron Porter

Fixed bug #81085: Add version 7.71.0 blob options.

Adds support for the following options beginning with version 7.71.0:

CURLOPT_ISSUERCERT_BLOB
CURLOPT_PROXY_ISSUERCERT

Fixed bug #81085: Add version 7.71.0 blob options.

Adds support for the following options beginning with version 7.71.0:

CURLOPT_ISSUERCERT_BLOB
CURLOPT_PROXY_ISSUERCERT
CURLOPT_PROXY_ISSUERCERT_BLOB
CURLOPT_PROXY_SSLCERT_BLOB
CURLOPT_PROXY_SSLKEY_BLOB
CURLOPT_SSLCERT_BLOB
CURLOPT_SSLKEY_BLOB

Closes GH-7194.

show more ...

# aad0d268 25-Jun-2021 Joe Watkins

Fix bug #81200 ReflectionMethod::isStatic belongs on ReflectionFunctionAbstract

1...<<919293949596979899100>>...619