php-src/ext/dom
Niels Dossche 111072a9f0
Fix GH-18744: PHP 8.4 classList works not correctly if copy HTMLElement by clone keyword.
The $classList property is special in the sense that it's a cached
object instance per (HTML)Element instance. The reason for this design
is because it has the [[SameObject]] IDL attribute.
Cloning in PHP also clones the properties, so it also clones the cached
instance. To solve this, we undo this by resetting the backing storage.

Closes GH-18749.
2025-06-04 18:59:05 +02:00
..
lexbor Update Lexbor patches for non-string attribute 2025-05-28 23:34:08 +02:00
parentnode Fix static analysis warning 2024-10-30 20:55:50 +01:00
tests Fix GH-18744: PHP 8.4 classList works not correctly if copy HTMLElement by clone keyword. 2025-06-04 18:59:05 +02:00
attr.c [ci skip] Fix typo 2024-09-23 22:19:15 +02:00
cdatasection.c Preferably include from build dir (#13516) 2024-06-26 00:26:43 +02:00
characterdata.c Minor cleanup in dom_character_data_append_data (#15173) 2024-07-30 23:05:12 +02:00
comment.c Preferably include from build dir (#13516) 2024-06-26 00:26:43 +02:00
config.m4 Autotools: Normalize PHP_ADD_BUILD_DIR 1st argument (#15612) 2024-08-29 00:44:29 +02:00
config.w32 Sync HAVE_<extension> help texts (#15167) 2024-08-02 01:41:47 +02:00
CREDITS Add myself to ext-dom credits (#14718) 2024-06-29 15:18:34 +01:00
document.c Merge branch 'PHP-8.3' into PHP-8.4 2025-05-19 19:11:22 +02:00
documentfragment.c Preferably include from build dir (#13516) 2024-06-26 00:26:43 +02:00
documenttype.c Preferably include from build dir (#13516) 2024-06-26 00:26:43 +02:00
dom_ce.h Implement PHP-specific extensions to Dom (#14754) 2024-07-04 13:50:19 +02:00
dom_iterators.c Merge branch 'PHP-8.3' into PHP-8.4 2025-03-09 11:21:27 +01:00
dom_properties.h Deprecate Soft-deprecated DOMDocument and DOMEntity properties (#15369) 2024-08-13 12:39:20 +01:00
domexception.c Preferably include from build dir (#13516) 2024-06-26 00:26:43 +02:00
domexception.h Implement CSS selectors 2024-06-29 13:00:26 -07:00
domimplementation.c Use "must not" instead of "cannot" wording 2024-08-21 21:12:17 +01:00
element.c Fix GH-18744: PHP 8.4 classList works not correctly if copy HTMLElement by clone keyword. 2025-06-04 18:59:05 +02:00
entity.c Suppress deprecation notices when ext/dom properties are accessed by the get_debug_info handler (#15530) 2024-08-23 10:39:11 +02:00
entityreference.c Deduplicate NULL checks in ext/dom (#15015) 2024-07-18 21:20:03 +02:00
html5_parser.c Fix GH-18090: DOM: Svg attributes and tag names are being lowercased 2025-03-17 19:45:50 +01:00
html5_parser.h Support templated content 2024-07-15 11:10:51 +02:00
html5_serializer.c Update HTML5 serializer comments 2024-12-11 19:48:47 +01:00
html5_serializer.h Support templated content 2024-07-15 11:10:51 +02:00
html_collection.c Merge branch 'PHP-8.3' 2024-08-31 11:56:34 +02:00
html_collection.h Support named items in dimension handling for HTMLCollection 2024-04-14 14:46:04 +02:00
html_document.c Fix potential read of uninitialized padding data in DOM (#17628) 2025-01-30 11:26:58 -04:00
infra.c Follow-up on GH-13516: include config.h from build dir for new files in ext-dom (#14705) 2024-06-28 18:29:22 +02:00
infra.h Implement Dom\Document::$title getter 2024-06-26 12:17:12 -07:00
inner_html_mixin.c Fix GH-18597: Heap-buffer-overflow in zend_alloc.c when assigning string with UTF-8 bytes 2025-05-20 21:32:17 +02:00
internal_helpers.h Support templated content 2024-07-15 11:10:51 +02:00
namednodemap.c Preferably include from build dir (#13516) 2024-06-26 00:26:43 +02:00
namespace_compat.c Support templated content 2024-07-15 11:10:51 +02:00
namespace_compat.h Support templated content 2024-07-15 11:10:51 +02:00
node.c Merge branch 'PHP-8.3' into PHP-8.4 2025-01-17 19:37:14 +01:00
nodelist.c Merge branch 'PHP-8.3' 2024-08-31 11:56:34 +02:00
nodelist.h Get rid of reserved name usage 2024-05-13 19:46:51 +02:00
notation.c Preferably include from build dir (#13516) 2024-06-26 00:26:43 +02:00
php_dom.c Fix GH-18744: PHP 8.4 classList works not correctly if copy HTMLElement by clone keyword. 2025-06-04 18:59:05 +02:00
php_dom.h Fix GH-18744: PHP 8.4 classList works not correctly if copy HTMLElement by clone keyword. 2025-06-04 18:59:05 +02:00
php_dom.stub.php Add missing backslash for TokenList interfaces in stub (#17009) 2024-12-01 15:18:44 +01:00
php_dom_arginfo.h Add missing backslash for TokenList interfaces in stub (#17009) 2024-12-01 15:18:44 +01:00
private_data.c Support templated content 2024-07-15 11:10:51 +02:00
private_data.h Support templated content 2024-07-15 11:10:51 +02:00
processinginstruction.c Preferably include from build dir (#13516) 2024-06-26 00:26:43 +02:00
serialize_common.h Small optimization in dom_local_name_compare_ex() (#15950) 2024-09-20 08:11:13 +02:00
text.c Fix GH-15137: Unexpected null pointer in Zend/zend_smart_str.h (#15138) 2024-07-28 13:53:30 +02:00
token_list.c Fix GH-17201: Dom\TokenList issues with interned string replace 2024-12-17 23:07:58 +01:00
token_list.h Implement Dom\TokenList (#13664) 2024-07-02 21:34:23 +02:00
xml_common.h Merge branch 'PHP-8.3' into PHP-8.4 2024-10-08 20:58:20 +02:00
xml_document.c Fix GH-18597: Heap-buffer-overflow in zend_alloc.c when assigning string with UTF-8 bytes 2025-05-20 21:32:17 +02:00
xml_serializer.c Fix XML serializer errata: xmlns="" serialization should be allowed 2024-09-15 21:30:53 +02:00
xml_serializer.h Support templated content 2024-07-15 11:10:51 +02:00
xpath.c Merge branch 'PHP-8.3' into PHP-8.4 2024-10-10 19:29:16 +02:00
xpath_callbacks.c Fix using Dom\Node with Dom\XPath callbacks 2025-02-22 16:00:39 +01:00
xpath_callbacks.h Fix includes for separate builds for ext/dom (#14752) 2024-07-01 20:22:58 +02:00