RESOLVED FIXED 176639
QualifiedName::init should assume AtomicStrings::init was already called
https://bugs.webkit.org/show_bug.cgi?id=176639
Summary QualifiedName::init should assume AtomicStrings::init was already called
Joseph Pecoraro
Reported 2017-09-08 17:07:42 PDT
QualifiedName::init should assume AtomicStrings::init was already called All clients of QualifiedName::init() already call AtomicString::init(), QualifiedName doesn't need to do it itself. $ ack 'QualifiedName::init' -B 2 WebKit/UIProcess/API/APIContentRuleListStore.cpp 429-{ 430- AtomicString::init(); 431: WebCore::QualifiedName::init(); WebCore/page/Frame.cpp 174- AtomicString::init(); 175- HTMLNames::init(); 176: QualifiedName::init(); WebCore/contentextensions/ContentExtensionParser.cpp 235-{ 236- AtomicString::init(); 237: QualifiedName::init();
Attachments
[PATCH] Proposed Fix (1.23 KB, patch)
2017-09-08 17:10 PDT, Joseph Pecoraro
no flags
[PATCH] Proposed Fix (1.23 KB, patch)
2017-09-08 17:10 PDT, Joseph Pecoraro
no flags
[PATCH] Proposed Fix (2.26 KB, patch)
2017-09-11 15:29 PDT, Joseph Pecoraro
joepeck: review-
[PATCH] Proposed Fix (2.29 KB, patch)
2017-09-11 17:09 PDT, Joseph Pecoraro
no flags
Joseph Pecoraro
Comment 1 2017-09-08 17:10:02 PDT
Created attachment 320317 [details] [PATCH] Proposed Fix
Joseph Pecoraro
Comment 2 2017-09-08 17:10:26 PDT
Comment on attachment 320317 [details] [PATCH] Proposed Fix View in context: https://bugs.webkit.org/attachment.cgi?id=320317&action=review > Source/WebCore/ChangeLog:10 > + All callers of QualifiedName::init preceed it with their own call to Typo: preceed => precede
Joseph Pecoraro
Comment 3 2017-09-08 17:10:59 PDT
Created attachment 320318 [details] [PATCH] Proposed Fix
Sam Weinig
Comment 4 2017-09-08 17:46:52 PDT
Comment on attachment 320318 [details] [PATCH] Proposed Fix View in context: https://bugs.webkit.org/attachment.cgi?id=320318&action=review > Source/WebCore/dom/QualifiedName.cpp:-48 > - AtomicString::init(); Can we assert this instead?
Joseph Pecoraro
Comment 5 2017-09-08 17:48:20 PDT
Comment on attachment 320318 [details] [PATCH] Proposed Fix View in context: https://bugs.webkit.org/attachment.cgi?id=320318&action=review >> Source/WebCore/dom/QualifiedName.cpp:-48 >> - AtomicString::init(); > > Can we assert this instead? The next line uses nullAtom / starAtom which will assert if AtomicString::init has not happened. I figured that was enough, albeit a little obtuse.
Sam Weinig
Comment 6 2017-09-08 20:05:38 PDT
(In reply to Joseph Pecoraro from comment #5) > Comment on attachment 320318 [details] > [PATCH] Proposed Fix > > View in context: > https://bugs.webkit.org/attachment.cgi?id=320318&action=review > > >> Source/WebCore/dom/QualifiedName.cpp:-48 > >> - AtomicString::init(); > > > > Can we assert this instead? > > The next line uses nullAtom / starAtom which will assert if > AtomicString::init has not happened. I figured that was enough, albeit a > little obtuse. Seems like an explicit assert would document intent much better.
Joseph Pecoraro
Comment 7 2017-09-11 15:29:56 PDT
Created attachment 320489 [details] [PATCH] Proposed Fix
Joseph Pecoraro
Comment 8 2017-09-11 17:08:29 PDT
Comment on attachment 320489 [details] [PATCH] Proposed Fix View in context: https://bugs.webkit.org/attachment.cgi?id=320489&action=review > Source/WTF/wtf/NeverDestroyed.h:114 > + bool isConstructed() const { return m_isConstructed; } Needs !ASSERT_DISABLED like the member.
Joseph Pecoraro
Comment 9 2017-09-11 17:09:53 PDT
Created attachment 320508 [details] [PATCH] Proposed Fix
WebKit Commit Bot
Comment 10 2017-09-12 17:31:23 PDT
Comment on attachment 320508 [details] [PATCH] Proposed Fix Clearing flags on attachment: 320508 Committed r221951: <http://trac.webkit.org/changeset/221951>
WebKit Commit Bot
Comment 11 2017-09-12 17:31:24 PDT
All reviewed patches have been landed. Closing bug.
Radar WebKit Bug Importer
Comment 12 2017-09-27 12:33:41 PDT
Note You need to log in before you can comment on or make changes to this bug.