#
a80db7b5 |
| 23-Sep-2023 |
David Carlier |
Fix GH-12282: IntlDateFormatter::construct should throw an exception is the locale field has an invalid value. Close GH-12282
|
#
5d68d619 |
| 22-Sep-2023 |
Niels Dossche <7771979+nielsdos@users.noreply.github.com> |
Implement #53655: Improve speed of DOMNode::C14N() on large XML documents The XPath query is in accordance to spec [1]. However, we can do it in a simpler way. We can use a custom callba
Implement #53655: Improve speed of DOMNode::C14N() on large XML documents The XPath query is in accordance to spec [1]. However, we can do it in a simpler way. We can use a custom callback function instead of a linear search in XPath to check if a node is visible. Note that comment nodes are handled internally by libxml2 already, so we do not need to differentiate between node types. The callback will do an upwards traversal of the tree until the root of the canonicalization is reached. In practice this will speed up the application a lot. [1] https://www.w3.org/TR/2001/REC-xml-c14n-20010315 section 2.1 Closes GH-12278.
show more ...
|
#
3d857d5b |
| 22-Sep-2023 |
Tim Düsterhus |
round(): Validate the rounding mode (#12252)
|
#
f6fae19a |
| 21-Sep-2023 |
David Carlier |
ext/intl: expose dateformat UDAT_PATTERN constant. Close GH-12258
|
#
ca5f9e81 |
| 21-Sep-2023 |
Niels Dossche <7771979+nielsdos@users.noreply.github.com> |
[ci skip] NEWS Remove redundant whitespace
|
#
30f26b58 |
| 20-Sep-2023 |
Niels Dossche <7771979+nielsdos@users.noreply.github.com> |
Fix memory leak when calling xml_parse_into_struct() twice Closes GH-12254.
|
#
b1d9a8d3 |
| 20-Sep-2023 |
Niels Dossche <7771979+nielsdos@users.noreply.github.com> |
Fix return type of stub of xml_parse_into_struct() Closes GH-12253.
|
#
84c4336a |
| 19-Sep-2023 |
David Carlier |
Fix GH-12243, segfault on IntlDateFormatter::construct with dateType set to UDAT_PATTERN but not timeType. udat_open expects its timeStyle's argument to be set to UDAT_PATTERN when date
Fix GH-12243, segfault on IntlDateFormatter::construct with dateType set to UDAT_PATTERN but not timeType. udat_open expects its timeStyle's argument to be set to UDAT_PATTERN when dateStyle is, regardless if there an actual pattern or not. Close GH-12245
show more ...
|
#
da6097ff |
| 15-Sep-2023 |
Niels Dossche <7771979+nielsdos@users.noreply.github.com> |
Fix GH-12215: Module entry being overwritten causes type errors in ext/dom (<= PHP 8.3) When we try to load an extension multiple times, we still overwrite the type, module number, and h
Fix GH-12215: Module entry being overwritten causes type errors in ext/dom (<= PHP 8.3) When we try to load an extension multiple times, we still overwrite the type, module number, and handle. If the module number is used to indicate module boundaries (e.g. in reflection and in dom, see e.g. dom_objects_set_class_ex), then all sorts of error can happen. In the case of ext/dom, OP's error happens because the following happens: - The property handler is set up incorrectly in dom_objects_set_class_ex() because the wrong module number is specified. The class highest in the hierarchy is DOMNode, so the property handler is incorrectly set to that of DOMNode instead of DOMDocument. - The documentElement property doesn't exist on DOMNode, it only exists on DOMDocument, so it tries to read using zend_std_read_property(). As there is no user property called documentElement, that read operation returns an undef value. However, the type is still checked, resulting in the strange exception. Closes GH-12219.
show more ...
|
#
1a4e401b |
| 19-Sep-2023 |
Niels Dossche <7771979+nielsdos@users.noreply.github.com> |
Fix bug #55098: SimpleXML iteration produces infinite loop Closes GH-12247.
|
#
9652889b |
| 19-Sep-2023 |
Tim Düsterhus |
Reimplement `php_round_helper()` using `modf()` (#12220) This change makes the implementation much easier to understand, by explicitly handling the various cases. It fixes round
Reimplement `php_round_helper()` using `modf()` (#12220) This change makes the implementation much easier to understand, by explicitly handling the various cases. It fixes rounding for `0.49999999999999994`, because no loss of precision happens by adding / subtracing `0.5` before turning the result into an integral float. Instead the fractional parts are explicitly compared. see GH-12143 (this fixes one of the reported cases) Closes GH-12159 which was an alternative attempt to fix the rounding issue for `0.49999999999999994`
show more ...
|
#
d61efdfe |
| 02-Sep-2023 |
Niels Dossche <7771979+nielsdos@users.noreply.github.com> |
Fix GH-11956: PCRE regular expressions with JIT enabled gives different result The code in the attached test used to work correctly in PHP 8.0, but not in 8.1+. This is because PHP 8.1+
Fix GH-11956: PCRE regular expressions with JIT enabled gives different result The code in the attached test used to work correctly in PHP 8.0, but not in 8.1+. This is because PHP 8.1+ uses a more modern version of pcre2 than PHP 8.0, and that pcre2 versions has a regression. While upgrading pcre2lib seems to be only done for the master branch, it is possible to backport upstream fixes to stable branches. This has been already done in the past in for JIT regressions [1], so it is not unprecedented. We backport the upstream pcre2 fix [2]. [1] https://github.com/php/php-src/commit/788a701e222 [2] https://github.com/PCRE2Project/pcre2/pull/135 Closes GH-12108.
show more ...
|
#
910f579f |
| 18-Sep-2023 |
Florian Sowade |
Fix GH-12207 memory leak of doc blocks of static properties When declaring the same static property with a doc block in a class and in a trait, the doc block of the property in the class
Fix GH-12207 memory leak of doc blocks of static properties When declaring the same static property with a doc block in a class and in a trait, the doc block of the property in the class is leaked. While at it, possibly fix doc comment for internal classes. Close GH-12238
show more ...
|
#
0b614a6c |
| 13-Sep-2023 |
George Peter Banyard |
Fixed oss-fuzz #62294: Unsetting variable after ++/-- on string variable warning Closes GH-12202
|
#
486276f0 |
| 17-Sep-2023 |
Niels Dossche <7771979+nielsdos@users.noreply.github.com> |
Fix GH-12208: SimpleXML infinite loop when a cast is used inside a foreach Closes GH-12229.
|
#
39a9e561 |
| 16-Sep-2023 |
Niels Dossche <7771979+nielsdos@users.noreply.github.com> |
Fix GH-12223: Entity reference produces infinite loop in var_dump/print_r Closes GH-12223.
|
#
4d888cf5 |
| 12-Sep-2023 |
Niels Dossche <7771979+nielsdos@users.noreply.github.com> |
Fix GH-12192: SimpleXML infinite loop when getName() is called within foreach This happens because getName() resets the iterator to the start because it overwrites the iterator data.
Fix GH-12192: SimpleXML infinite loop when getName() is called within foreach This happens because getName() resets the iterator to the start because it overwrites the iterator data. We add a version of get_first_node that does not overwrite the iterator data. Closes GH-12193.
show more ...
|
#
10f5a06d |
| 12-Sep-2023 |
Max Semenik |
Fix GH-12186: segfault copying/cloning a finalized HashContext Closes GH-12186. Closes GH-12187.
|
#
d344fe06 |
| 15-Sep-2023 |
Tim Düsterhus |
Fix #[Override] on traits overriding a parent method without a matching interface (#12205) Fixes GH-12189 Co-authored-by: Ilija Tovilo <ilija.tovilo@me.com>
|
#
747335f1 |
| 11-Sep-2023 |
Niels Dossche <7771979+nielsdos@users.noreply.github.com> |
Fix GH-12170: Can't use xpath with comments in SimpleXML Closes GH-12177.
|
#
b2d244a4 |
| 14-Sep-2023 |
Tim Düsterhus |
Show the integer size in phpinfo() (#12201) Resolves GH-12188
|
#
c2fb10d2 |
| 13-Sep-2023 |
Ilija Tovilo |
Fix filter_var with callback and explicit REQUIRE_SCALAR For some reason, FILTER_CALLBACK disables the FILTER_REQUIRE_SCALAR flag that is normally set by default. While surprising, this
Fix filter_var with callback and explicit REQUIRE_SCALAR For some reason, FILTER_CALLBACK disables the FILTER_REQUIRE_SCALAR flag that is normally set by default. While surprising, this is not something we can change. However, even specifying FILTER_REQUIRE_SCALAR explicitly does not corrently set this flag. This is because FILTER_CALLBACK zeroes the flags after they have been populated from the parameters. We reverse the checks to make explicitly specifying the flag behave as expected. Closes GH-12203
show more ...
|
#
c1cf0026 |
| 12-Sep-2023 |
Ben Ramsey |
PHP-8.1 is now for PHP 8.1.25-dev
|
#
58b8393c |
| 08-Sep-2023 |
Graham Campbell |
Removed incorrect news items for things already in 8.3.x or earlier Closes GH-12160
|
#
107443b3 |
| 09-Sep-2023 |
Niels Dossche <7771979+nielsdos@users.noreply.github.com> |
Fix #52751: XPath processing-instruction() function is not supported. Closes GH-12165.
|