Stop needlessly invoking the autoloader to `<wcfNode-*>` tags
authorTim Düsterhus <duesterhus@woltlab.com>
Fri, 14 Apr 2023 08:31:46 +0000 (10:31 +0200)
committerTim Düsterhus <duesterhus@woltlab.com>
Fri, 14 Apr 2023 08:34:27 +0000 (10:34 +0200)
These node names are randomly generated and will never match an existing class.
In fact the tag name transformation did not even result in valid classnames in
the majority of cases, because the randomly generated ID might start with a
number, thus including a hyphen in the classname.

Stop needlessly invoking the autoloader, and thus accessing the disk, for these
tags.

wcfsetup/install/files/lib/system/html/node/AbstractHtmlNodeProcessor.class.php

index eb93e2f908eb6ec0dcc38b9932e9b1ec68b9f369..17b30d028a50dd312fcb53682a45b89d4bae991d 100644 (file)
@@ -330,7 +330,10 @@ abstract class AbstractHtmlNodeProcessor implements IHtmlNodeProcessor
         }
 
         foreach ($tags as $tagName) {
-            if (\in_array($tagName, $skipTags)) {
+            if (
+                \in_array($tagName, $skipTags)
+                || \str_starts_with($tagName, 'wcfNode-')
+            ) {
                 continue;
             }