Bug 232488 - Create constants for all special frame names used in anchor target attribute values and elsewhere
Summary: Create constants for all special frame names used in anchor target attribute ...
Status: RESOLVED FIXED
Alias: None
Product: WebKit
Classification: Unclassified
Component: Page Loading (show other bugs)
Version: WebKit Nightly Build
Hardware: Unspecified Unspecified
: P2 Normal
Assignee: Darin Adler
URL:
Keywords: InRadar
Depends on:
Blocks:
 
Reported: 2021-10-29 08:59 PDT by Darin Adler
Modified: 2021-10-29 13:55 PDT (History)
24 users (show)

See Also:


Attachments
Patch (25.54 KB, patch)
2021-10-29 10:00 PDT, Darin Adler
andersca: review+
Details | Formatted Diff | Diff

Note You need to log in before you can comment on or make changes to this bug.
Description Darin Adler 2021-10-29 08:59:56 PDT
Create constants for all special frame names used in anchor target attribute values and elsewhere
Comment 1 Darin Adler 2021-10-29 10:00:35 PDT
Created attachment 442828 [details]
Patch
Comment 2 Darin Adler 2021-10-29 10:27:32 PDT
Committed r285038 (243682@main): <https://commits.webkit.org/243682@main>
Comment 3 Radar WebKit Bug Importer 2021-10-29 10:28:39 PDT
<rdar://problem/84813765>
Comment 4 Chris Dumez 2021-10-29 13:20:59 PDT
I see this on the EWS bots:

ASSERTION FAILED: toASCIILowerUnchecked(*letter) == *letter
/Volumes/Data/worker/macOS-AppleSilicon-Big-Sur-Debug-Build-EWS/build/WebKitBuild/Debug/usr/local/include/wtf/text/StringCommon.h(618) : bool WTF::hasPrefixWithLettersIgnoringASCIICaseCommon(const StringClass &, const char *, unsigned int) [StringClass = WTF::StringView]
1   0x13bc99668 WTFCrash
2   0x119240250 WebCore::JSDOMConstructorBase::scriptExecutionContext() const
3   0x11a2123c8 bool WTF::hasPrefixWithLettersIgnoringASCIICaseCommon<WTF::StringView>(WTF::StringView const&, char const*, unsigned int)
4   0x11a2122cc bool WTF::equalLettersIgnoringASCIICaseCommonWithoutLength<WTF::StringView>(WTF::StringView const&, char const*)
5   0x11b4b7848 bool WTF::equalLettersIgnoringASCIICaseCommon<WTF::StringView, 6u>(WTF::StringView const&, char const (&) [6u])
6   0x11b4b77bc bool WTF::equalLettersIgnoringASCIICase<6u>(WTF::StringView, char const (&) [6u])
7   0x11c61ad00 WebCore::isSelfTargetFrameName(WTF::StringView)
8   0x11c61a964 WebCore::FrameTree::find(WTF::AtomString const&, WebCore::Frame&) const
9   0x11c3b0d08 WebCore::FrameLoader::findFrameForNavigation(WTF::AtomString const&, WebCore::Document*)
10  0x11c3b537c WebCore::FrameLoader::loadURL(WebCore::FrameLoadRequest&&, WTF::String const&, WebCore::FrameLoadType, WebCore::Event*, WTF::RefPtr<WebCore::FormState, WTF::RawPtrTraits<WebCore::FormState>, WTF::DefaultRefDerefTraits<WebCore::FormState> >&&, std::__1::optional<WebCore::PrivateClickMeasurement>&&, WTF::CompletionHandler<void ()>&&)
11  0x11c3b3fa8 WebCore::FrameLoader::loadURLIntoChildFrame(WTF::URL const&, WTF::String const&, WebCore::Frame*)
12  0x11c4679d8 WebCore::FrameLoader::SubframeLoader::loadSubframe(WebCore::HTMLFrameOwnerElement&, WTF::URL const&, WTF::String const&, WTF::String const&)
13  0x11c466844 WebCore::FrameLoader::SubframeLoader::loadOrRedirectSubframe(WebCore::HTMLFrameOwnerElement&, WTF::URL const&, WTF::AtomString const&, WebCore::LockHistory, WebCore::LockBackForwardList)
14  0x11c466300 WebCore::FrameLoader::SubframeLoader::requestFrame(WebCore::HTMLFrameOwnerElement&, WTF::String const&, WTF::AtomString const&, WebCore::LockHistory, WebCore::LockBackForwardList)
15  0x11bc20068 WebCore::HTMLFrameElementBase::openURL(WebCore::LockHistory, WebCore::LockBackForwardList)
16  0x11bc203e4 WebCore::HTMLFrameElementBase::didFinishInsertingNode()
17  0x11b64a3f4 void WebCore::executeNodeInsertionWithScriptAssertion<WebCore::ContainerNode::parserAppendChild(WebCore::Node&)::$_5>(WebCore::ContainerNode&, WebCore::Node&, WebCore::ContainerNode::ChildChange::Source, WebCore::ReplacedAllChildren, WebCore::ContainerNode::parserAppendChild(WebCore::Node&)::$_5)
18  0x11b6469b0 WebCore::ContainerNode::parserAppendChild(WebCore::Node&)
19  0x11beb7b28 WebCore::insert(WebCore::HTMLConstructionSiteTask&)
20  0x11beb7504 WebCore::executeInsertTask(WebCore::HTMLConstructionSiteTask&)
21  0x11bea5120 WebCore::executeTask(WebCore::HTMLConstructionSiteTask&)
22  0x11bea4fb0 WebCore::HTMLConstructionSite::executeQueuedTasks()
23  0x11bee7ea8 WebCore::HTMLTreeBuilder::constructTree(WebCore::AtomHTMLToken&&)
24  0x11beae054 WebCore::HTMLDocumentParser::constructTreeFromHTMLToken(WebCore::HTMLTokenizer::TokenPtr&)
25  0x11beadddc WebCore::HTMLDocumentParser::pumpTokenizerLoop(WebCore::HTMLDocumentParser::SynchronousMode, bool, WebCore::PumpSession&)
26  0x11bead064 WebCore::HTMLDocumentParser::pumpTokenizer(WebCore::HTMLDocumentParser::SynchronousMode)
27  0x11beac8d0 WebCore::HTMLDocumentParser::pumpTokenizerIfPossible(WebCore::HTMLDocumentParser::SynchronousMode)
28  0x11beae838 WebCore::HTMLDocumentParser::append(WTF::RefPtr<WTF::StringImpl, WTF::RawPtrTraits<WTF::StringImpl>, WTF::DefaultRefDerefTraits<WTF::StringImpl> >&&, WebCore::HTMLDocumentParser::SynchronousMode)
29  0x11beae66c WebCore::HTMLDocumentParser::append(WTF::RefPtr<WTF::StringImpl, WTF::RawPtrTraits<WTF::StringImpl>, WTF::DefaultRefDerefTraits<WTF::StringImpl> >&&)
30  0x11b689974 WebCore::DecodedDataDocumentParser::appendBytes(WebCore::DocumentWriter&, unsigned char const*, unsigned long)
31  0x11c3389e4 WebCore::DocumentWriter::addData(unsigned char const*, unsigned long)
Comment 5 ayumi_kojima 2021-10-29 13:30:35 PDT
Reverted r285038 for reason:

Reverting the commit because it broke the open source test runs and also caused an impanct on EWS queues

Committed r285046 (243689@main): <https://commits.webkit.org/243689@main>
Comment 6 Darin Adler 2021-10-29 13:51:14 PDT
Oops! Will re-land a fixed version.
Comment 7 Darin Adler 2021-10-29 13:55:09 PDT
Committed r285048 (243691@main): <https://commits.webkit.org/243691@main>