WordPress/wp-includes/html-api
dmsnell 8d059b9fe2 HTML API: Fix an infinite loop in certain unclosed SCRIPT tags.
When the Tag Processor (or HTML Processor) attempts to parse certain
incomplete script tags, the parser enters an infinite loop and will
hang indefinitely. The conditions to reach this situation are:

- Input HTML ends with an open script tag.
- The final character of input is `-` or `<`.

The infinite loop was caused by the parser-advancing increment not being
called when two `||` OR conditions short-circuited. If the first
condition was true, the `$at++` code was never reached.

This path resolves the issue.

Developed in https://github.com/wordpress/wordpress-develop/pull/7128
Discussed in https://core.trac.wordpress.org/ticket/61810

Follow-up to [55203].

Props: dmsnell, jonsurrell.
Fixes #61810.

Built from https://develop.svn.wordpress.org/trunk@58845


git-svn-id: http://core.svn.wordpress.org/trunk@58241 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2024-08-02 23:48:14 +00:00
..
class-wp-html-active-formatting-elements.php HTML API: Add missing tags in IN BODY insertion mode to HTML Processor. 2024-07-22 22:24:15 +00:00
class-wp-html-attribute-token.php
class-wp-html-decoder.php HTML API: Add PHP type annotations. 2024-07-19 23:44:16 +00:00
class-wp-html-open-elements.php HTML API: Add TEMPLATE and related support in HTML Processor. 2024-07-30 18:46:35 +00:00
class-wp-html-processor-state.php HTML API: Introduce full parsing mode in HTML Processor. 2024-07-31 16:56:15 +00:00
class-wp-html-processor.php HTML API: Add support for IN SELECT IN TABLE parsing. 2024-08-01 22:53:16 +00:00
class-wp-html-span.php HTML API: Add PHP type annotations. 2024-07-19 23:44:16 +00:00
class-wp-html-stack-event.php HTML API: Add PHP type annotations. 2024-07-19 23:44:16 +00:00
class-wp-html-tag-processor.php HTML API: Fix an infinite loop in certain unclosed SCRIPT tags. 2024-08-02 23:48:14 +00:00
class-wp-html-text-replacement.php HTML API: Add PHP type annotations. 2024-07-19 23:44:16 +00:00
class-wp-html-token.php HTML API: Add missing tags in IN BODY insertion mode to HTML Processor. 2024-07-22 22:24:15 +00:00
class-wp-html-unsupported-exception.php HTML API: Add context to Unsupported_Exception class for improved debugging. 2024-07-12 22:29:13 +00:00
html5-named-character-references.php Introduce Token Map: An optimized static translation class. 2024-05-23 19:56:08 +00:00