| Commit message (Collapse) | Author | Age | Files | Lines |
|\
| |
| |
| |
| | |
* PHP-8.0:
Fix #66783: UAF when appending DOMDocument to element
|
| |\
| | |
| | |
| | |
| | | |
* PHP-7.4:
Fix #66783: UAF when appending DOMDocument to element
|
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | | |
According to the DOM standard, elements may only contain element, text,
processing instruction and comment nodes[1]. It is also specified that
a HierarchyRequestError should be thrown if a document is to be
inserted[2]. We follow that standard, and prevent the use-after-free
this way.
[1] <https://dom.spec.whatwg.org/#node-trees>
[2] <https://dom.spec.whatwg.org/#mutation-algorithms>
Closes GH-6765.
|
| | |
| | |
| | |
| | | |
Closes GH-6780
|
|\ \ \
| |/ / |
|
| | | |
|
| | |
| | |
| | |
| | |
| | |
| | | |
etc.
Now properties are ordered according to their layout in zend_object structure.
|
|\ \ \
| |/ /
| | |
| | |
| | |
| | |
| | | |
* PHP-8.0:
Fix potential file collision in dom tests
Fix bug #80757 (Exit code is 0 when could not open file)
Update NEWS
|
| |\ \
| | |/
| | |
| | |
| | | |
* PHP-7.4:
Fix potential file collision in dom tests
|
| | | |
|
| | | |
|
| | |
| | |
| | |
| | |
| | |
| | | |
xsl, zip, Zend
Closes GH-6706
|
| | |
| | |
| | |
| | | |
Related to GH-6701
|
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | | |
This deprecates passing null to non-nullable scale arguments of
internal functions, with the eventual goal of making the behavior
consistent with userland functions, where null is never accepted
for non-nullable arguments.
This change is expected to cause quite a lot of fallout. In most
cases, calling code should be adjusted to avoid passing null. In
some cases, PHP should be adjusted to make some function arguments
nullable. I have already fixed a number of functions before landing
this, but feel free to file a bug if you encounter a function that
doesn't accept null, but probably should. (The rule of thumb for
this to be applicable is that the function must have special behavior
for 0 or "", which is distinct from the natural behavior of the
parameter.)
RFC: https://wiki.php.net/rfc/deprecate_null_to_scalar_internal_arg
Closes GH-6475.
|
| | |
| | |
| | |
| | |
| | |
| | | |
enabled
Closes GH-6675
|
|\ \ \
| |/ /
| | |
| | |
| | | |
* PHP-8.0:
Make createDocument() $namespace nullable
|
| | |
| | |
| | |
| | |
| | |
| | | |
According to the DOM specification, this argument should be
nullable. It's also supposed to be a required argument, but
not changing that at this point.
|
|\ \ \
| |/ /
| | |
| | |
| | | |
* PHP-8.0:
Make getElementsByTagNameNS $namespace nullable
|
| | |
| | |
| | |
| | |
| | | |
According to the DOM specification, this argument is supposed to
be nullable.
|
| | |
| | |
| | |
| | | |
Relates to GH-6644
|
|\ \ \
| |/ / |
|
| | |
| | |
| | |
| | | |
Closes GH-6660
|
| | |
| | |
| | |
| | |
| | |
| | | |
Closes GH-6289
Co-authored-by: Nikita Popov <nikita.ppv@gmail.com>
|
|/ /
| |
| |
| |
| |
| |
| | |
We're starting to see a mix between uses of zend_bool and bool.
Replace all usages with the standard bool type everywhere.
Of course, zend_bool is retained as an alias.
|
| |
| |
| |
| | |
Closes GH-6367
|
| |
| |
| |
| |
| |
| |
| |
| | |
This is an unavoidable breaking change to both the type and
parameter name.
The assertion that was supposed to prevent this was overly lax
and accepted any object type for string parameters.
|
|\ \
| |/
| |
| |
| | |
* PHP-7.4:
Fix #80268: loadHTML() truncates at NUL bytes
|
| |\
| | |
| | |
| | |
| | | |
* PHP-7.3:
Fix #80268: loadHTML() truncates at NUL bytes
|
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | | |
libxml2 has no particular issues parsing HTML strings with NUL bytes;
these just cause truncation of the current text content, but parsing
continues generally. Since `::loadHTMLFile()` already supports NUL
bytes, `::loadHTML()` should as well.
Note that this is different from XML, which does not allow any NUL
bytes.
Closes GH-6368.
|
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | | |
Not all extensions consistently throw exceptions when the user passes
a path name containing null bytes. Also, some extensions would throw
a ValueError while others would throw a TypeError. Error messages
also varied.
Now a ValueError is thrown after all failed path checks, at least for
as far as these occur in functions that are exposed to userland.
Closes GH-6216.
|
| | | |
|
| | |
| | |
| | |
| | | |
Closes GH-5418
|
| | |
| | |
| | |
| | |
| | | |
This should fix most of the remaining issues with tabs and spaces
being mixed in tests.
|
| | |
| | |
| | |
| | |
| | |
| | | |
In preparation for generating method signatures for the manual.
This change gets rid of bogus false|null return types, a few unnecessary trailing backslashes, and settles on using ? when possible for nullable types.
|
| | |
| | |
| | |
| | |
| | |
| | |
| | | |
They will now follow the canonical order of types. Older macros are
left intact due to maintaining BC.
Closes GH-6112
|
| | |
| | |
| | |
| | | |
Closes GH-5999
|
| | | |
|
| | |
| | |
| | |
| | | |
Closes GH-5955
|
| | |
| | |
| | |
| | | |
Per general convention for handling of uninitialized objects.
|
| | |
| | |
| | |
| | | |
Closes GH-5958
|
| | | |
|
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | | |
From an engine perspective, named parameters mainly add three
concepts:
* The SEND_* opcodes now accept a CONST op2, which is the
argument name. For now, it is looked up by linear scan and
runtime cached.
* This may leave UNDEF arguments on the stack. To avoid having
to deal with them in other places, a CHECK_UNDEF_ARGS opcode
is used to either replace them with defaults, or error.
* For variadic functions, EX(extra_named_params) are collected
and need to be freed based on ZEND_CALL_HAS_EXTRA_NAMED_PARAMS.
RFC: https://wiki.php.net/rfc/named_params
Closes GH-5357.
|
| | |
| | |
| | |
| | | |
Co-authored-by: Thomas Weinert <thomas@weinert.info>
|
| | |
| | |
| | |
| | |
| | | |
Only one of three identical cases returned true, and the function
is documented to return void. Remove the outlier.
|
| | | |
|
| | | |
|
| | |
| | |
| | |
| | | |
Closes GH-5590
|
| | | |
|
| | |
| | |
| | |
| | | |
All of these clearly do not need separation support.
|
| | |
| | |
| | |
| | | |
Closes GH-5758
|