Use SecurityOriginData more consistently in Service Worker code to avoid constructing SecurityOrigin objects.
Created attachment 336454 [details] Patch
Attachment 336454 [details] did not pass style-queue: ERROR: Source/WebKit/UIProcess/ServiceWorkerProcessProxy.cpp:54: Code inside a namespace should not be indented. [whitespace/indent] [4] Total errors found: 1 in 26 files If any of these errors are false positives, please file a bug against check-webkit-style.
Comment on attachment 336454 [details] Patch View in context: https://bugs.webkit.org/attachment.cgi?id=336454&action=review > Source/WebCore/ChangeLog:17 > + * page/SecurityOriginData.cpp: > + (WebCore::SecurityOriginData::toString const): > + Update the SecurityOriginData::toString() implementation to match the one in > + SecurityOrigin. In particular, in the common case where there is no port, the > + string is now https://www.webkit.org, not https://www.webkit.org:0. This comment is slightly misleading. The function does *not* match SecurityOrigin::toRawString in the case where m_protocol is "file". > Source/WebCore/page/SecurityOriginData.cpp:64 > - return makeString(protocol, "://", host, ":", String::number(port.value_or(0))); > + StringBuilder result; > + result.reserveCapacity(protocol.length() + host.length() + 10); > + result.append(protocol); > + result.appendLiteral("://"); > + result.append(host); > + > + if (port) { > + result.append(':'); > + result.appendNumber(port.value()); > + } > + > + return result.toString(); Here’s another way to write it that is simpler and more efficient: if (!port) return makeString(protocol, "://", host); return makeString(protocol, "://", host, ':', *port); We should change SecurityOrigin::toRawString to do it that way, I think. Should we eventually make SecurityOrigin use a SecurityOriginData data member instead of m_protocol, m_host, and m_port? If so, then SecurityOrigin::toRawString could actually call this function. > Source/WebCore/page/SecurityOriginData.h:29 > +#include "URL.h" > #include <wtf/text/WTFString.h> Can delete the include of WTFString.h since we are adding the include of URL.h. > Source/WebCore/workers/service/server/SWOriginStore.h:30 > +#include "SecurityOriginData.h" Can remove the include of WTFString.h since we are adding the include of SecurityOriginData.h. > Source/WebCore/workers/service/server/SWOriginStore.h:32 > #include <wtf/text/StringHash.h> We can remove this include too since we aren’t hashing strings here any more.
Created attachment 336455 [details] Patch
Attachment 336455 [details] did not pass style-queue: ERROR: Source/WebKit/UIProcess/ServiceWorkerProcessProxy.cpp:54: Code inside a namespace should not be indented. [whitespace/indent] [4] Total errors found: 1 in 74 files If any of these errors are false positives, please file a bug against check-webkit-style.
Created attachment 336456 [details] Patch
Attachment 336456 [details] did not pass style-queue: ERROR: Source/WebKit/UIProcess/ServiceWorkerProcessProxy.cpp:54: Code inside a namespace should not be indented. [whitespace/indent] [4] Total errors found: 1 in 77 files If any of these errors are false positives, please file a bug against check-webkit-style.
Created attachment 336457 [details] Patch
Attachment 336457 [details] did not pass style-queue: ERROR: Source/WebKit/UIProcess/ServiceWorkerProcessProxy.cpp:54: Code inside a namespace should not be indented. [whitespace/indent] [4] Total errors found: 1 in 79 files If any of these errors are false positives, please file a bug against check-webkit-style.
Created attachment 336458 [details] Patch
Darin, I made the refactoring you suggested. Could you please take another look? Also note that makeString() does not do the right thing when passed a uint16_t so I had to call String::number() first.
Attachment 336458 [details] did not pass style-queue: ERROR: Source/WebKit/UIProcess/ServiceWorkerProcessProxy.cpp:54: Code inside a namespace should not be indented. [whitespace/indent] [4] Total errors found: 1 in 79 files If any of these errors are false positives, please file a bug against check-webkit-style.
Created attachment 336464 [details] Patch
Attachment 336464 [details] did not pass style-queue: ERROR: Source/WebKit/UIProcess/ServiceWorkerProcessProxy.cpp:54: Code inside a namespace should not be indented. [whitespace/indent] [4] Total errors found: 1 in 79 files If any of these errors are false positives, please file a bug against check-webkit-style.
Created attachment 336475 [details] Patch
Attachment 336475 [details] did not pass style-queue: ERROR: Source/WebKit/UIProcess/ServiceWorkerProcessProxy.cpp:54: Code inside a namespace should not be indented. [whitespace/indent] [4] Total errors found: 1 in 79 files If any of these errors are false positives, please file a bug against check-webkit-style.
Comment on attachment 336475 [details] Patch View in context: https://bugs.webkit.org/attachment.cgi?id=336475&action=review > Source/WebCore/page/SecurityOriginData.cpp:47 > + return makeString(protocol, "://", host, ':', String::number(*port)); Calling String::number should not be necessary if we include the StringConcatenateNumbers.h header, and that would save allocating and then destroying a String every time.
(In reply to Darin Adler from comment #17) > Comment on attachment 336475 [details] > Patch > > View in context: > https://bugs.webkit.org/attachment.cgi?id=336475&action=review > > > Source/WebCore/page/SecurityOriginData.cpp:47 > > + return makeString(protocol, "://", host, ':', String::number(*port)); > > Calling String::number should not be necessary if we include the > StringConcatenateNumbers.h header, and that would save allocating and then > destroying a String every time. #include <wtf/text/StringConcatenateNumbers.h> does not seem to help: --- /Volumes/Data/WebKit/OpenSource/WebKitBuild/Release/layout-test-results/http/tests/cache-storage/cache-clearing-origin.https-expected.txt +++ /Volumes/Data/WebKit/OpenSource/WebKitBuild/Release/layout-test-results/http/tests/cache-storage/cache-clearing-origin.https-actual.txt @@ -1,7 +1,7 @@ PASS Create a cache storage from localhost and clear it -PASS Clearing disk cache of a given origin -PASS Validating cache representation before clearing -PASS Validating cache representation after clearing +FAIL Clearing disk cache of a given origin assert_true: Actual origin cache size is not zero expected true got false +FAIL Validating cache representation before clearing assert_equals: top origin of cache 1 expected "https://127.0.0.1:8443" but got "https://127.0.0.1:⃻" +FAIL Validating cache representation after clearing assert_equals: top origin of cache 1 expected "https://127.0.0.1:8443" but got "https://127.0.0.1:⃻"
(In reply to Chris Dumez from comment #18) > (In reply to Darin Adler from comment #17) > > Comment on attachment 336475 [details] > > Patch > > > > View in context: > > https://bugs.webkit.org/attachment.cgi?id=336475&action=review > > > > > Source/WebCore/page/SecurityOriginData.cpp:47 > > > + return makeString(protocol, "://", host, ':', String::number(*port)); > > > > Calling String::number should not be necessary if we include the > > StringConcatenateNumbers.h header, and that would save allocating and then > > destroying a String every time. > > #include <wtf/text/StringConcatenateNumbers.h> does not seem to help: > --- > /Volumes/Data/WebKit/OpenSource/WebKitBuild/Release/layout-test-results/http/ > tests/cache-storage/cache-clearing-origin.https-expected.txt > +++ > /Volumes/Data/WebKit/OpenSource/WebKitBuild/Release/layout-test-results/http/ > tests/cache-storage/cache-clearing-origin.https-actual.txt > @@ -1,7 +1,7 @@ > > > PASS Create a cache storage from localhost and clear it > -PASS Clearing disk cache of a given origin > -PASS Validating cache representation before clearing > -PASS Validating cache representation after clearing > +FAIL Clearing disk cache of a given origin assert_true: Actual origin cache > size is not zero expected true got false > +FAIL Validating cache representation before clearing assert_equals: top > origin of cache 1 expected "https://127.0.0.1:8443" but got > "https://127.0.0.1:⃻" > +FAIL Validating cache representation after clearing assert_equals: top > origin of cache 1 expected "https://127.0.0.1:8443" but got > "https://127.0.0.1:⃻" My best is that it probably ends up using the template specialization for UChar?
(In reply to Chris Dumez from comment #18) > (In reply to Darin Adler from comment #17) > > Comment on attachment 336475 [details] > > Patch > > > > View in context: > > https://bugs.webkit.org/attachment.cgi?id=336475&action=review > > > > > Source/WebCore/page/SecurityOriginData.cpp:47 > > > + return makeString(protocol, "://", host, ':', String::number(*port)); > > > > Calling String::number should not be necessary if we include the > > StringConcatenateNumbers.h header, and that would save allocating and then > > destroying a String every time. > > #include <wtf/text/StringConcatenateNumbers.h> does not seem to help: The problem is that UChar and uint16_t are the same type, so it’s interpreting the port number as a character. A short term workaround is to convert the port number to some other integer type: static_cast<uint32_t>(*port) A longer term solution would be to make an adapter to resolve the ambiguity, something like how FormattedNumber works, or even just add integer serializing to FormattedNumber itself.
Created attachment 336480 [details] Patch
Comment on attachment 336480 [details] Patch View in context: https://bugs.webkit.org/attachment.cgi?id=336480&action=review > Source/WebCore/page/SecurityOriginData.cpp:48 > + return makeString(protocol, "://", host, ':', static_cast<unsigned>(*port)); Using static_cast<unsigned>(), I can force it to use the right template specialization and it works without doing a String allocation.
(In reply to Chris Dumez from comment #22) > Comment on attachment 336480 [details] > Patch > > View in context: > https://bugs.webkit.org/attachment.cgi?id=336480&action=review > > > Source/WebCore/page/SecurityOriginData.cpp:48 > > + return makeString(protocol, "://", host, ':', static_cast<unsigned>(*port)); > > Using static_cast<unsigned>(), I can force it to use the right template > specialization and it works without doing a String allocation. Oh, I just saw your comment. I'll use uint32_t as you suggested.
Created attachment 336481 [details] Patch
Attachment 336481 [details] did not pass style-queue: ERROR: Source/WebKit/UIProcess/ServiceWorkerProcessProxy.cpp:54: Code inside a namespace should not be indented. [whitespace/indent] [4] Total errors found: 1 in 79 files If any of these errors are false positives, please file a bug against check-webkit-style.
Comment on attachment 336481 [details] Patch Clearing flags on attachment: 336481 Committed r229954: <https://trac.webkit.org/changeset/229954>
All reviewed patches have been landed. Closing bug.
<rdar://problem/38831027>
(In reply to WebKit Commit Bot from comment #26) > Comment on attachment 336481 [details] > Patch > > Clearing flags on attachment: 336481 > > Committed r229954: <https://trac.webkit.org/changeset/229954> This caused many layout tests to crash on the Apple High Sierra Debug, Apple Sierra Debug, Apple iOS 11 Simulator Debug and GTK Linux 64-bit Debug test bots. For convenience, the following are hyperlinks to the test results: Apple Sierra Debug WK1 (Tests): <https://build.webkit.org/results/Apple%20Sierra%20Debug%20WK1%20(Tests)/r229954%20(6875)/results.html> <https://build.webkit.org/builders/Apple%20Sierra%20Debug%20WK1%20%28Tests%29/builds/6875> Apple Sierra Debug WK2 (Tests): <https://build.webkit.org/results/Apple%20Sierra%20Debug%20WK2%20(Tests)/r229954%20(5768)/results.html> <https://build.webkit.org/builders/Apple%20Sierra%20Debug%20WK2%20%28Tests%29/builds/5768> Apple High Sierra Debug WK1 (Tests): <https://build.webkit.org/results/Apple%20High%20Sierra%20Debug%20WK1%20(Tests)/r229954%20(2992)/results.html> <https://build.webkit.org/builders/Apple%20High%20Sierra%20Debug%20WK1%20%28Tests%29/builds/2992> Apple High Sierra Debug WK2 (Tests): <https://build.webkit.org/results/Apple%20High%20Sierra%20Debug%20WK2%20(Tests)/r229954%20(2579)/results.html> <https://build.webkit.org/builders/Apple%20High%20Sierra%20Debug%20WK2%20%28Tests%29/builds/2579> Apple iOS 11 Simulator Debug WK2 (Tests): <https://build.webkit.org/results/Apple%20iOS%2011%20Simulator%20Debug%20WK2%20(Tests)/r229954%20(3375)/results.html> <https://build.webkit.org/builders/Apple%20iOS%2011%20Simulator%20Debug%20WK2%20%28Tests%29/builds/3375> GTK Linux 64-bit Debug (Tests): <https://build.webkit.org/results/GTK%20Linux%2064-bit%20Debug%20(Tests)/r229956%20(2747)/results.html> <https://build.webkit.org/builders/GTK%20Linux%2064-bit%20Debug%20%28Tests%29/builds/2747>
Re-opened since this is blocked by bug 184000
(In reply to Daniel Bates from comment #29) > (In reply to WebKit Commit Bot from comment #26) > > Comment on attachment 336481 [details] > > Patch > > > > Clearing flags on attachment: 336481 > > > > Committed r229954: <https://trac.webkit.org/changeset/229954> > > This caused many layout tests to crash on the Apple High Sierra Debug, Apple > Sierra Debug, Apple iOS 11 Simulator Debug and GTK Linux 64-bit Debug test > bots. For convenience, the following are hyperlinks to the test results: > > Apple Sierra Debug WK1 (Tests): > <https://build.webkit.org/results/Apple%20Sierra%20Debug%20WK1%20(Tests)/ > r229954%20(6875)/results.html> > <https://build.webkit.org/builders/ > Apple%20Sierra%20Debug%20WK1%20%28Tests%29/builds/6875> > > Apple Sierra Debug WK2 (Tests): > <https://build.webkit.org/results/Apple%20Sierra%20Debug%20WK2%20(Tests)/ > r229954%20(5768)/results.html> > <https://build.webkit.org/builders/ > Apple%20Sierra%20Debug%20WK2%20%28Tests%29/builds/5768> > > Apple High Sierra Debug WK1 (Tests): > <https://build.webkit.org/results/ > Apple%20High%20Sierra%20Debug%20WK1%20(Tests)/r229954%20(2992)/results.html> > <https://build.webkit.org/builders/ > Apple%20High%20Sierra%20Debug%20WK1%20%28Tests%29/builds/2992> > > Apple High Sierra Debug WK2 (Tests): > <https://build.webkit.org/results/ > Apple%20High%20Sierra%20Debug%20WK2%20(Tests)/r229954%20(2579)/results.html> > <https://build.webkit.org/builders/ > Apple%20High%20Sierra%20Debug%20WK2%20%28Tests%29/builds/2579> > > Apple iOS 11 Simulator Debug WK2 (Tests): > <https://build.webkit.org/results/ > Apple%20iOS%2011%20Simulator%20Debug%20WK2%20(Tests)/r229954%20(3375)/ > results.html> > <https://build.webkit.org/builders/ > Apple%20iOS%2011%20Simulator%20Debug%20WK2%20%28Tests%29/builds/3375> > > GTK Linux 64-bit Debug (Tests): > <https://build.webkit.org/results/GTK%20Linux%2064-bit%20Debug%20(Tests)/ > r229956%20(2747)/results.html> > <https://build.webkit.org/builders/GTK%20Linux%2064- > bit%20Debug%20%28Tests%29/builds/2747> I am looking into this, thanks.
Assertion hit in debug WK2, which is why EWS did not catch it: Thread 0 Crashed:: Dispatch queue: com.apple.main-thread 0 com.apple.JavaScriptCore 0x0000000124dda694 WTFCrash + 36 (Assertions.cpp:271) 1 com.apple.WebKit 0x000000011156ba66 WTF::Ref<WebKit::WebSWServerToContextConnection, WTF::DumbPtrTraits<WebKit::WebSWServerToContextConnection> >::leakRef() + 70 (Ref.h:133) 2 com.apple.WebKit 0x000000011156b9d1 WTF::Ref<WebKit::WebSWServerToContextConnection, WTF::DumbPtrTraits<WebKit::WebSWServerToContextConnection> >::Ref(WTF::Ref<WebKit::WebSWServerToContextConnection, WTF::DumbPtrTraits<WebKit::WebSWServerToContextConnection> >&&) + 33 (Ref.h:75) 3 com.apple.WebKit 0x000000011156b99d WTF::Ref<WebKit::WebSWServerToContextConnection, WTF::DumbPtrTraits<WebKit::WebSWServerToContextConnection> >::Ref(WTF::Ref<WebKit::WebSWServerToContextConnection, WTF::DumbPtrTraits<WebKit::WebSWServerToContextConnection> >&&) + 29 (Ref.h:78) 4 com.apple.WebKit 0x000000011156b96c WTF::KeyValuePair<WebCore::SecurityOriginData, WTF::Ref<WebKit::WebSWServerToContextConnection, WTF::DumbPtrTraits<WebKit::WebSWServerToContextConnection> > >::KeyValuePair<WebCore::SecurityOriginData, WTF::Ref<WebKit::WebSWServerToContextConnection, WTF::DumbPtrTraits<WebKit::WebSWServerToContextConnection> > >(WebCore::SecurityOriginData&&, WTF::Ref<WebKit::WebSWServerToContextConnection, WTF::DumbPtrTraits<WebKit::WebSWServerToContextConnection> >&&) + 76 (KeyValuePair.h:46) 5 com.apple.WebKit 0x000000011156b8a5 WTF::KeyValuePair<WebCore::SecurityOriginData, WTF::Ref<WebKit::WebSWServerToContextConnection, WTF::DumbPtrTraits<WebKit::WebSWServerToContextConnection> > >::KeyValuePair<WebCore::SecurityOriginData, WTF::Ref<WebKit::WebSWServerToContextConnection, WTF::DumbPtrTraits<WebKit::WebSWServerToContextConnection> > >(WebCore::SecurityOriginData&&, WTF::Ref<WebKit::WebSWServerToContextConnection, WTF::DumbPtrTraits<WebKit::WebSWServerToContextConnection> >&&) + 37 (KeyValuePair.h:46) 6 com.apple.WebKit 0x000000011156b839 WTF::KeyValuePairHashTraits<WTF::HashTraits<WebCore::SecurityOriginData>, WTF::HashTraits<WTF::Ref<WebKit::WebSWServerToContextConnection, WTF::DumbPtrTraits<WebKit::WebSWServerToContextConnection> > > >::emptyValue() + 57 (HashTraits.h:292) 7 com.apple.WebKit 0x000000011156b7f9 void WTF::HashTableBucketInitializer<false>::initialize<WTF::HashMap<WebCore::SecurityOriginData, WTF::Ref<WebKit::WebSWServerToContextConnection, WTF::DumbPtrTraits<WebKit::WebSWServerToContextConnection> >, WebCore::SecurityOriginDataHash, WTF::HashTraits<WebCore::SecurityOriginData>, WTF::HashTraits<WTF::Ref<WebKit::WebSWServerToContextConnection, WTF::DumbPtrTraits<WebKit::WebSWServerToContextConnection> > > >::KeyValuePairTraits, WTF::KeyValuePair<WebCore::SecurityOriginData, WTF::Ref<WebKit::WebSWServerToContextConnection, WTF::DumbPtrTraits<WebKit::WebSWServerToContextConnection> > > >(WTF::KeyValuePair<WebCore::SecurityOriginData, WTF::Ref<WebKit::WebSWServerToContextConnection, WTF::DumbPtrTraits<WebKit::WebSWServerToContextConnection> > >&) + 57 (HashTable.h:841) 8 com.apple.WebKit 0x000000011156b7b5 WTF::HashTable<WebCore::SecurityOriginData, WTF::KeyValuePair<WebCore::SecurityOriginData, WTF::Ref<WebKit::WebSWServerToContextConnection, WTF::DumbPtrTraits<WebKit::WebSWServerToContextConnection> > >, WTF::KeyValuePairKeyExtractor<WTF::KeyValuePair<WebCore::SecurityOriginData, WTF::Ref<WebKit::WebSWServerToContextConnection, WTF::DumbPtrTraits<WebKit::WebSWServerToContextConnection> > > >, WebCore::SecurityOriginDataHash, WTF::HashMap<WebCore::SecurityOriginData, WTF::Ref<WebKit::WebSWServerToContextConnection, WTF::DumbPtrTraits<WebKit::WebSWServerToContextConnection> >, WebCore::SecurityOriginDataHash, WTF::HashTraits<WebCore::SecurityOriginData>, WTF::HashTraits<WTF::Ref<WebKit::WebSWServerToContextConnection, WTF::DumbPtrTraits<WebKit::WebSWServerToContextConnection> > > >::KeyValuePairTraits, WTF::HashTraits<WebCore::SecurityOriginData> >::initializeBucket(WTF::KeyValuePair<WebCore::SecurityOriginData, WTF::Ref<WebKit::WebSWServerToContextConnection, WTF::DumbPtrTraits<WebKit::WebSWServerToContextConnection> > >&) + 21 (HashTable.h:858) 9 com.apple.WebKit 0x000000011156b5db WTF::HashTable<WebCore::SecurityOriginData, WTF::KeyValuePair<WebCore::SecurityOriginData, WTF::Ref<WebKit::WebSWServerToContextConnection, WTF::DumbPtrTraits<WebKit::WebSWServerToContextConnection> > >, WTF::KeyValuePairKeyExtractor<WTF::KeyValuePair<WebCore::SecurityOriginData, WTF::Ref<WebKit::WebSWServerToContextConnection, WTF::DumbPtrTraits<WebKit::WebSWServerToContextConnection> > > >, WebCore::SecurityOriginDataHash, WTF::HashMap<WebCore::SecurityOriginData, WTF::Ref<WebKit::WebSWServerToContextConnection, WTF::DumbPtrTraits<WebKit::WebSWServerToContextConnection> >, WebCore::SecurityOriginDataHash, WTF::HashTraits<WebCore::SecurityOriginData>, WTF::HashTraits<WTF::Ref<WebKit::WebSWServerToContextConnection, WTF::DumbPtrTraits<WebKit::WebSWServerToContextConnection> > > >::KeyValuePairTraits, WTF::HashTraits<WebCore::SecurityOriginData> >::allocateTable(unsigned int) + 75 (HashTable.h:1148) 10 com.apple.WebKit 0x000000011156b368 WTF::HashTable<WebCore::SecurityOriginData, WTF::KeyValuePair<WebCore::SecurityOriginData, WTF::Ref<WebKit::WebSWServerToContextConnection, WTF::DumbPtrTraits<WebKit::WebSWServerToContextConnection> > >, WTF::KeyValuePairKeyExtractor<WTF::KeyValuePair<WebCore::SecurityOriginData, WTF::Ref<WebKit::WebSWServerToContextConnection, WTF::DumbPtrTraits<WebKit::WebSWServerToContextConnection> > > >, WebCore::SecurityOriginDataHash, WTF::HashMap<WebCore::SecurityOriginData, WTF::Ref<WebKit::WebSWServerToContextConnection, WTF::DumbPtrTraits<WebKit::WebSWServerToContextConnection> >, WebCore::SecurityOriginDataHash, WTF::HashTraits<WebCore::SecurityOriginData>, WTF::HashTraits<WTF::Ref<WebKit::WebSWServerToContextConnection, WTF::DumbPtrTraits<WebKit::WebSWServerToContextConnection> > > >::KeyValuePairTraits, WTF::HashTraits<WebCore::SecurityOriginData> >::rehash(unsigned int, WTF::KeyValuePair<WebCore::SecurityOriginData, WTF::Ref<WebKit::WebSWServerToContextConnection, WTF::DumbPtrTraits<WebKit::WebSWServerToContextConnection> > >*) + 72 (HashTable.h:1197) 11 com.apple.WebKit 0x0000000111573005 WTF::HashTable<WebCore::SecurityOriginData, WTF::KeyValuePair<WebCore::SecurityOriginData, WTF::Ref<WebKit::WebSWServerToContextConnection, WTF::DumbPtrTraits<WebKit::WebSWServerToContextConnection> > >, WTF::KeyValuePairKeyExtractor<WTF::KeyValuePair<WebCore::SecurityOriginData, WTF::Ref<WebKit::WebSWServerToContextConnection, WTF::DumbPtrTraits<WebKit::WebSWServerToContextConnection> > > >, WebCore::SecurityOriginDataHash, WTF::HashMap<WebCore::SecurityOriginData, WTF::Ref<WebKit::WebSWServerToContextConnection, WTF::DumbPtrTraits<WebKit::WebSWServerToContextConnection> >, WebCore::SecurityOriginDataHash, WTF::HashTraits<WebCore::SecurityOriginData>, WTF::HashTraits<WTF::Ref<WebKit::WebSWServerToContextConnection, WTF::DumbPtrTraits<WebKit::WebSWServerToContextConnection> > > >::KeyValuePairTraits, WTF::HashTraits<WebCore::SecurityOriginData> >::expand(WTF::KeyValuePair<WebCore::SecurityOriginData, WTF::Ref<WebKit::WebSWServerToContextConnection, WTF::DumbPtrTraits<WebKit::WebSWServerToContextConnection> > >*) + 117 (HashTable.h:1174) 12 com.apple.WebKit 0x0000000111572d1c WTF::HashTableAddResult<WTF::HashTableIterator<WebCore::SecurityOriginData, WTF::KeyValuePair<WebCore::SecurityOriginData, WTF::Ref<WebKit::WebSWServerToContextConnection, WTF::DumbPtrTraits<WebKit::WebSWServerToContextConnection> > >, WTF::KeyValuePairKeyExtractor<WTF::KeyValuePair<WebCore::SecurityOriginData, WTF::Ref<WebKit::WebSWServerToContextConnection, WTF::DumbPtrTraits<WebKit::WebSWServerToContextConnection> > > >, WebCore::SecurityOriginDataHash, WTF::HashMap<WebCore::SecurityOriginData, WTF::Ref<WebKit::WebSWServerToContextConnection, WTF::DumbPtrTraits<WebKit::WebSWServerToContextConnection> >, WebCore::SecurityOriginDataHash, WTF::HashTraits<WebCore::SecurityOriginData>, WTF::HashTraits<WTF::Ref<WebKit::WebSWServerToContextConnection, WTF::DumbPtrTraits<WebKit::WebSWServerToContextConnection> > > >::KeyValuePairTraits, WTF::HashTraits<WebCore::SecurityOriginData> > > WTF::HashTable<WebCore::SecurityOriginData, WTF::KeyValuePair<WebCore::SecurityOriginData, WTF::Ref<WebKit::WebSWServerToContextConnection, WTF::DumbPtrTraits<WebKit::WebSWServerToContextConnection> > >, WTF::KeyValuePairKeyExtractor<WTF::KeyValuePair<WebCore::SecurityOriginData, WTF::Ref<WebKit::WebSWServerToContextConnection, WTF::DumbPtrTraits<WebKit::WebSWServerToContextConnection> > > >, WebCore::SecurityOriginDataHash, WTF::HashMap<WebCore::SecurityOriginData, WTF::Ref<WebKit::WebSWServerToContextConnection, WTF::DumbPtrTraits<WebKit::WebSWServerToContextConnection> >, WebCore::SecurityOriginDataHash, WTF::HashTraits<WebCore::SecurityOriginData>, WTF::HashTraits<WTF::Ref<WebKit::WebSWServerToContextConnection, WTF::DumbPtrTraits<WebKit::WebSWServerToContextConnection> > > >::KeyValuePairTraits, WTF::HashTraits<WebCore::SecurityOriginData> >::add<WTF::HashMapTranslator<WTF::HashMap<WebCore::SecurityOriginData, WTF::Ref<WebKit::WebSWServerToContextConnection, WTF::DumbPtrTraits<WebKit::WebSWServerToContextConnection> >, WebCore::SecurityOriginDataHash, WTF::HashTraits<WebCore::SecurityOriginData>, WTF::HashTraits<WTF::Ref<WebKit::WebSWServerToContextConnection, WTF::DumbPtrTraits<WebKit::WebSWServerToContextConnection> > > >::KeyValuePairTraits, WebCore::SecurityOriginDataHash>, WebCore::SecurityOriginData, WTF::Ref<WebKit::WebSWServerToContextConnection, WTF::DumbPtrTraits<WebKit::WebSWServerToContextConnection> > >(WebCore::SecurityOriginData&&, WTF::Ref<WebKit::WebSWServerToContextConnection, WTF::DumbPtrTraits<WebKit::WebSWServerToContextConnection> >&&) + 108 (HashTable.h:869) 13 com.apple.WebKit 0x0000000111572c9c WTF::HashTableAddResult<WTF::HashTableIterator<WebCore::SecurityOriginData, WTF::KeyValuePair<WebCore::SecurityOriginData, WTF::Ref<WebKit::WebSWServerToContextConnection, WTF::DumbPtrTraits<WebKit::WebSWServerToContextConnection> > >, WTF::KeyValuePairKeyExtractor<WTF::KeyValuePair<WebCore::SecurityOriginData, WTF::Ref<WebKit::WebSWServerToContextConnection, WTF::DumbPtrTraits<WebKit::WebSWServerToContextConnection> > > >, WebCore::SecurityOriginDataHash, WTF::HashMap<WebCore::SecurityOriginData, WTF::Ref<WebKit::WebSWServerToContextConnection, WTF::DumbPtrTraits<WebKit::WebSWServerToContextConnection> >, WebCore::SecurityOriginDataHash, WTF::HashTraits<WebCore::SecurityOriginData>, WTF::HashTraits<WTF::Ref<WebKit::WebSWServerToContextConnection, WTF::DumbPtrTraits<WebKit::WebSWServerToContextConnection> > > >::KeyValuePairTraits, WTF::HashTraits<WebCore::SecurityOriginData> > > WTF::HashMap<WebCore::SecurityOriginData, WTF::Ref<WebKit::WebSWServerToContextConnection, WTF::DumbPtrTraits<WebKit::WebSWServerToContextConnection> >, WebCore::SecurityOriginDataHash, WTF::HashTraits<WebCore::SecurityOriginData>, WTF::HashTraits<WTF::Ref<WebKit::WebSWServerToContextConnection, WTF::DumbPtrTraits<WebKit::WebSWServerToContextConnection> > > >::inlineAdd<WebCore::SecurityOriginData, WTF::Ref<WebKit::WebSWServerToContextConnection, WTF::DumbPtrTraits<WebKit::WebSWServerToContextConnection> > >(WebCore::SecurityOriginData&&, WTF::Ref<WebKit::WebSWServerToContextConnection, WTF::DumbPtrTraits<WebKit::WebSWServerToContextConnection> >&&) + 60 (HashMap.h:346) 14 com.apple.WebKit 0x0000000111560b7f WTF::HashTableAddResult<WTF::HashTableIterator<WebCore::SecurityOriginData, WTF::KeyValuePair<WebCore::SecurityOriginData, WTF::Ref<WebKit::WebSWServerToContextConnection, WTF::DumbPtrTraits<WebKit::WebSWServerToContextConnection> > >, WTF::KeyValuePairKeyExtractor<WTF::KeyValuePair<WebCore::SecurityOriginData, WTF::Ref<WebKit::WebSWServerToContextConnection, WTF::DumbPtrTraits<WebKit::WebSWServerToContextConnection> > > >, WebCore::SecurityOriginDataHash, WTF::HashMap<WebCore::SecurityOriginData, WTF::Ref<WebKit::WebSWServerToContextConnection, WTF::DumbPtrTraits<WebKit::WebSWServerToContextConnection> >, WebCore::SecurityOriginDataHash, WTF::HashTraits<WebCore::SecurityOriginData>, WTF::HashTraits<WTF::Ref<WebKit::WebSWServerToContextConnection, WTF::DumbPtrTraits<WebKit::WebSWServerToContextConnection> > > >::KeyValuePairTraits, WTF::HashTraits<WebCore::SecurityOriginData> > > WTF::HashMap<WebCore::SecurityOriginData, WTF::Ref<WebKit::WebSWServerToContextConnection, WTF::DumbPtrTraits<WebKit::WebSWServerToContextConnection> >, WebCore::SecurityOriginDataHash, WTF::HashTraits<WebCore::SecurityOriginData>, WTF::HashTraits<WTF::Ref<WebKit::WebSWServerToContextConnection, WTF::DumbPtrTraits<WebKit::WebSWServerToContextConnection> > > >::add<WTF::Ref<WebKit::WebSWServerToContextConnection, WTF::DumbPtrTraits<WebKit::WebSWServerToContextConnection> > >(WebCore::SecurityOriginData&&, WTF::Ref<WebKit::WebSWServerToContextConnection, WTF::DumbPtrTraits<WebKit::WebSWServerToContextConnection> >&&) + 79 (HashMap.h:388) 15 com.apple.WebKit 0x0000000111560247 WebKit::StorageProcess::createStorageToWebProcessConnection(bool, WebCore::SecurityOriginData&&) + 663 (StorageProcess.cpp:279) 16 com.apple.WebKit 0x0000000111584f68 void IPC::callMemberFunctionImpl<WebKit::StorageProcess, void (WebKit::StorageProcess::*)(bool, WebCore::SecurityOriginData&&), std::__1::tuple<bool, WebCore::SecurityOriginData>, 0ul, 1ul>(WebKit::StorageProcess*, void (WebKit::StorageProcess::*)(bool, WebCore::SecurityOriginData&&), std::__1::tuple<bool, WebCore::SecurityOriginData>&&, std::__1::integer_sequence<unsigned long, 0ul, 1ul>) + 200 (HandleMessage.h:41) 17 com.apple.WebKit 0x0000000111584ce0 void IPC::callMemberFunction<WebKit::StorageProcess, void (WebKit::StorageProcess::*)(bool, WebCore::SecurityOriginData&&), std::__1::tuple<bool, WebCore::SecurityOriginData>, std::__1::integer_sequence<unsigned long, 0ul, 1ul> >(std::__1::tuple<bool, WebCore::SecurityOriginData>&&, WebKit::StorageProcess*, void (WebKit::StorageProcess::*)(bool, WebCore::SecurityOriginData&&)) + 96 (HandleMessage.h:47) 18 com.apple.WebKit 0x0000000111583058 void IPC::handleMessage<Messages::StorageProcess::CreateStorageToWebProcessConnection, WebKit::StorageProcess, void (WebKit::StorageProcess::*)(bool, WebCore::SecurityOriginData&&)>(IPC::Decoder&, WebKit::StorageProcess*, void (WebKit::StorageProcess::*)(bool, WebCore::SecurityOriginData&&)) + 312 (HandleMessage.h:127)
Created attachment 336524 [details] Patch
Attachment 336524 [details] did not pass style-queue: ERROR: Source/WebKit/UIProcess/ServiceWorkerProcessProxy.cpp:54: Code inside a namespace should not be indented. [whitespace/indent] [4] Total errors found: 1 in 79 files If any of these errors are false positives, please file a bug against check-webkit-style.
Comment on attachment 336524 [details] Patch Clearing flags on attachment: 336524 Committed r229979: <https://trac.webkit.org/changeset/229979>