WebKit Bugzilla
New
Browse
Search+
Log In
×
Sign in with GitHub
or
Remember my login
Create Account
·
Forgot Password
Forgotten password account recovery
RESOLVED FIXED
268020
ASSERT when calling storage.get
https://bugs.webkit.org/show_bug.cgi?id=268020
Summary
ASSERT when calling storage.get
Timothy Hatcher
Reported
2024-01-24 11:15:41 PST
Asser in Storage API: String errorString; if (!extensionCanAccessWebPage(webPageProxyIdentifier, errorString)) { completionHandler(std::nullopt, toErrorString(callingAPIName, nil, errorString)); return; } #0 0x00000001134a3ee8 in ::WTFCrash() at /Volumes/Timothy/Work/Safari/OpenSource/Source/WTF/wtf/Assertions.cpp:333 #1 0x00000001376ceed4 in WTFCrashWithInfo(int, char const*, char const*, int) at /Volumes/Timothy/Work/Safari/OpenSource/WebKitBuild/Debug/usr/local/include/wtf/Assertions.h:778 #2 0x000000013a70f908 in WebKit::toErrorString(NSString*, NSString*, NSString*, ...) at /Volumes/Timothy/Work/Safari/OpenSource/Source/WebKit/Shared/Extensions/WebExtensionUtilities.mm:329 #3 0x000000013a54afc4 in WebKit::WebExtensionContext::storageGet(WTF::ObjectIdentifierGeneric<WebKit::WebPageProxyIdentifierType, WTF::ObjectIdentifierMainThreadAccessTraits>, WebKit::WebExtensionStorageType, std::__1::span<unsigned char const, 18446744073709551615ul> const&, WTF::CompletionHandler<void (std::__1::optional<std::__1::span<unsigned char const, 18446744073709551615ul>>, std::__1::optional<WTF::String>)>&&) at /Volumes/Timothy/Work/Safari/OpenSource/Source/WebKit/UIProcess/Extensions/Cocoa/API/WebExtensionContextAPIStorageCocoa.mm:48 #4 0x000000013a6376c8 in auto void IPC::callMemberFunction<WebKit::WebExtensionContext, WebKit::WebExtensionContext, void (WTF::ObjectIdentifierGeneric<WebKit::WebPageProxyIdentifierType, WTF::ObjectIdentifierMainThreadAccessTraits>, WebKit::WebExtensionStorageType, std::__1::span<unsigned char const, 18446744073709551615ul> const&, WTF::CompletionHandler<void (std::__1::optional<std::__1::span<unsigned char const, 18446744073709551615ul>>, std::__1::optional<WTF::String>)>&&), std::__1::tuple<WTF::ObjectIdentifierGeneric<WebKit::WebPageProxyIdentifierType, WTF::ObjectIdentifierMainThreadAccessTraits>, WebKit::WebExtensionStorageType, std::__1::span<unsigned char const, 18446744073709551615ul>>, void (std::__1::optional<std::__1::span<unsigned char const, 18446744073709551615ul>>, std::__1::optional<WTF::String>)>(WebKit::WebExtensionContext*, void (WebKit::WebExtensionContext::*)(WTF::ObjectIdentifierGeneric<WebKit::WebPageProxyIdentifierType, WTF::ObjectIdentifierMainThreadAccessTraits>, WebKit::WebExtensionStorageType, std::__1::span<unsigned char const, 18446744073709551615ul> const&, WTF::CompletionHandler<void (std::__1::optional<std::__1::span<unsigned char const, 18446744073709551615ul>>, std::__1::optional<WTF::String>)>&&), std::__1::tuple<WTF::ObjectIdentifierGeneric<WebKit::WebPageProxyIdentifierType, WTF::ObjectIdentifierMainThreadAccessTraits>, WebKit::WebExtensionStorageType, std::__1::span<unsigned char const, 18446744073709551615ul>>&&, WTF::CompletionHandler<void (std::__1::optional<std::__1::span<unsigned char const, 18446744073709551615ul>>, std::__1::optional<WTF::String>)>&&)::'lambda'(auto&&...)::operator()<WTF::ObjectIdentifierGeneric<WebKit::WebPageProxyIdentifierType, WTF::ObjectIdentifierMainThreadAccessTraits>, WebKit::WebExtensionStorageType, std::__1::span<unsigned char const, 18446744073709551615ul>>(auto&&...) const at /Volumes/Timothy/Work/Safari/OpenSource/Source/WebKit/Platform/IPC/HandleMessage.h:147 #5 0x000000013a63755c in decltype(std::declval<WebKit::WebExtensionContext>()(std::declval<WTF::ObjectIdentifierGeneric<WebKit::WebPageProxyIdentifierType, WTF::ObjectIdentifierMainThreadAccessTraits>>(), std::declval<WebKit::WebExtensionStorageType>(), std::declval<std::__1::span<unsigned char const, 18446744073709551615ul>>())) std::__1::__invoke[abi:sn170006]<void IPC::callMemberFunction<WebKit::WebExtensionContext, WebKit::WebExtensionContext, void (WTF::ObjectIdentifierGeneric<WebKit::WebPageProxyIdentifierType, WTF::ObjectIdentifierMainThreadAccessTraits>, WebKit::WebExtensionStorageType, std::__1::span<unsigned char const, 18446744073709551615ul> const&, WTF::CompletionHandler<void (std::__1::optional<std::__1::span<unsigned char const, 18446744073709551615ul>>, std::__1::optional<WTF::String>)>&&), std::__1::tuple<WTF::ObjectIdentifierGeneric<WebKit::WebPageProxyIdentifierType, WTF::ObjectIdentifierMainThreadAccessTraits>, WebKit::WebExtensionStorageType, std::__1::span<unsigned char const, 18446744073709551615ul>>, void (std::__1::optional<std::__1::span<unsigned char const, 18446744073709551615ul>>, std::__1::optional<WTF::String>)>(WebKit::WebExtensionContext*, void (WebKit::WebExtensionContext::*)(WTF::ObjectIdentifierGeneric<WebKit::WebPageProxyIdentifierType, WTF::ObjectIdentifierMainThreadAccessTraits>, WebKit::WebExtensionStorageType, std::__1::span<unsigned char const, 18446744073709551615ul> const&, WTF::CompletionHandler<void (std::__1::optional<std::__1::span<unsigned char const, 18446744073709551615ul>>, std::__1::optional<WTF::String>)>&&), std::__1::tuple<WTF::ObjectIdentifierGeneric<WebKit::WebPageProxyIdentifierType, WTF::ObjectIdentifierMainThreadAccessTraits>, WebKit::WebExtensionStorageType, std::__1::span<unsigned char const, 18446744073709551615ul>>&&, WTF::CompletionHandler<void (std::__1::optional<std::__1::span<unsigned char const, 18446744073709551615ul>>, std::__1::optional<WTF::String>)>&&)::'lambda'(auto&&...), WTF::ObjectIdentifierGeneric<WebKit::WebPageProxyIdentifierType, WTF::ObjectIdentifierMainThreadAccessTraits>, WebKit::WebExtensionStorageType, std::__1::span<unsigned char const, 18446744073709551615ul>>(WebKit::WebExtensionContext&&, WTF::ObjectIdentifierGeneric<WebKit::WebPageProxyIdentifierType, WTF::ObjectIdentifierMainThreadAccessTraits>&&, WebKit::WebExtensionStorageType&&, std::__1::span<unsigned char const, 18446744073709551615ul>&&) at /Volumes/Timothy/Applications/Xcode.app/Contents/Developer/Platforms/MacOSX.platform/Developer/SDKs/MacOSX14.4.Internal.sdk/usr/include/c++/v1/__type_traits/invoke.h:340 #6 0x000000013a63751c in decltype(auto) std::__1::__apply_tuple_impl[abi:sn170006]<void IPC::callMemberFunction<WebKit::WebExtensionContext, WebKit::WebExtensionContext, void (WTF::ObjectIdentifierGeneric<WebKit::WebPageProxyIdentifierType, WTF::ObjectIdentifierMainThreadAccessTraits>, WebKit::WebExtensionStorageType, std::__1::span<unsigned char const, 18446744073709551615ul> const&, WTF::CompletionHandler<void (std::__1::optional<std::__1::span<unsigned char const, 18446744073709551615ul>>, std::__1::optional<WTF::String>)>&&), std::__1::tuple<WTF::ObjectIdentifierGeneric<WebKit::WebPageProxyIdentifierType, WTF::ObjectIdentifierMainThreadAccessTraits>, WebKit::WebExtensionStorageType, std::__1::span<unsigned char const, 18446744073709551615ul>>, void (std::__1::optional<std::__1::span<unsigned char const, 18446744073709551615ul>>, std::__1::optional<WTF::String>)>(WebKit::WebExtensionContext*, void (WebKit::WebExtensionContext::*)(WTF::ObjectIdentifierGeneric<WebKit::WebPageProxyIdentifierType, WTF::ObjectIdentifierMainThreadAccessTraits>, WebKit::WebExtensionStorageType, std::__1::span<unsigned char const, 18446744073709551615ul> const&, WTF::CompletionHandler<void (std::__1::optional<std::__1::span<unsigned char const, 18446744073709551615ul>>, std::__1::optional<WTF::String>)>&&), std::__1::tuple<WTF::ObjectIdentifierGeneric<WebKit::WebPageProxyIdentifierType, WTF::ObjectIdentifierMainThreadAccessTraits>, WebKit::WebExtensionStorageType, std::__1::span<unsigned char const, 18446744073709551615ul>>&&, WTF::CompletionHandler<void (std::__1::optional<std::__1::span<unsigned char const, 18446744073709551615ul>>, std::__1::optional<WTF::String>)>&&)::'lambda'(auto&&...), std::__1::tuple<WTF::ObjectIdentifierGeneric<WebKit::WebPageProxyIdentifierType, WTF::ObjectIdentifierMainThreadAccessTraits>, WebKit::WebExtensionStorageType, std::__1::span<unsigned char const, 18446744073709551615ul>>, 0ul, 1ul, 2ul>(WebKit::WebExtensionContext&&, WebKit::WebExtensionContext&&, std::__1::__tuple_indices<0ul, 1ul, 2ul>) at /Volumes/Timothy/Applications/Xcode.app/Contents/Developer/Platforms/MacOSX.platform/Developer/SDKs/MacOSX14.4.Internal.sdk/usr/include/c++/v1/tuple:1825 #7 0x000000013a6374bc in decltype(auto) std::__1::apply[abi:sn170006]<void IPC::callMemberFunction<WebKit::WebExtensionContext, WebKit::WebExtensionContext, void (WTF::ObjectIdentifierGeneric<WebKit::WebPageProxyIdentifierType, WTF::ObjectIdentifierMainThreadAccessTraits>, WebKit::WebExtensionStorageType, std::__1::span<unsigned char const, 18446744073709551615ul> const&, WTF::CompletionHandler<void (std::__1::optional<std::__1::span<unsigned char const, 18446744073709551615ul>>, std::__1::optional<WTF::String>)>&&), std::__1::tuple<WTF::ObjectIdentifierGeneric<WebKit::WebPageProxyIdentifierType, WTF::ObjectIdentifierMainThreadAccessTraits>, WebKit::WebExtensionStorageType, std::__1::span<unsigned char const, 18446744073709551615ul>>, void (std::__1::optional<std::__1::span<unsigned char const, 18446744073709551615ul>>, std::__1::optional<WTF::String>)>(WebKit::WebExtensionContext*, void (WebKit::WebExtensionContext::*)(WTF::ObjectIdentifierGeneric<WebKit::WebPageProxyIdentifierType, WTF::ObjectIdentifierMainThreadAccessTraits>, WebKit::WebExtensionStorageType, std::__1::span<unsigned char const, 18446744073709551615ul> const&, WTF::CompletionHandler<void (std::__1::optional<std::__1::span<unsigned char const, 18446744073709551615ul>>, std::__1::optional<WTF::String>)>&&), std::__1::tuple<WTF::ObjectIdentifierGeneric<WebKit::WebPageProxyIdentifierType, WTF::ObjectIdentifierMainThreadAccessTraits>, WebKit::WebExtensionStorageType, std::__1::span<unsigned char const, 18446744073709551615ul>>&&, WTF::CompletionHandler<void (std::__1::optional<std::__1::span<unsigned char const, 18446744073709551615ul>>, std::__1::optional<WTF::String>)>&&)::'lambda'(auto&&...), std::__1::tuple<WTF::ObjectIdentifierGeneric<WebKit::WebPageProxyIdentifierType, WTF::ObjectIdentifierMainThreadAccessTraits>, WebKit::WebExtensionStorageType, std::__1::span<unsigned char const, 18446744073709551615ul>>>(WebKit::WebExtensionContext&&, WebKit::WebExtensionContext&&) at /Volumes/Timothy/Applications/Xcode.app/Contents/Developer/Platforms/MacOSX.platform/Developer/SDKs/MacOSX14.4.Internal.sdk/usr/include/c++/v1/tuple:1834 #8 0x000000013a6356e4 in void IPC::callMemberFunction<WebKit::WebExtensionContext, WebKit::WebExtensionContext, void (WTF::ObjectIdentifierGeneric<WebKit::WebPageProxyIdentifierType, WTF::ObjectIdentifierMainThreadAccessTraits>, WebKit::WebExtensionStorageType, std::__1::span<unsigned char const, 18446744073709551615ul> const&, WTF::CompletionHandler<void (std::__1::optional<std::__1::span<unsigned char const, 18446744073709551615ul>>, std::__1::optional<WTF::String>)>&&), std::__1::tuple<WTF::ObjectIdentifierGeneric<WebKit::WebPageProxyIdentifierType, WTF::ObjectIdentifierMainThreadAccessTraits>, WebKit::WebExtensionStorageType, std::__1::span<unsigned char const, 18446744073709551615ul>>, void (std::__1::optional<std::__1::span<unsigned char const, 18446744073709551615ul>>, std::__1::optional<WTF::String>)>(WebKit::WebExtensionContext*, void (WebKit::WebExtensionContext::*)(WTF::ObjectIdentifierGeneric<WebKit::WebPageProxyIdentifierType, WTF::ObjectIdentifierMainThreadAccessTraits>, WebKit::WebExtensionStorageType, std::__1::span<unsigned char const, 18446744073709551615ul> const&, WTF::CompletionHandler<void (std::__1::optional<std::__1::span<unsigned char const, 18446744073709551615ul>>, std::__1::optional<WTF::String>)>&&), std::__1::tuple<WTF::ObjectIdentifierGeneric<WebKit::WebPageProxyIdentifierType, WTF::ObjectIdentifierMainThreadAccessTraits>, WebKit::WebExtensionStorageType, std::__1::span<unsigned char const, 18446744073709551615ul>>&&, WTF::CompletionHandler<void (std::__1::optional<std::__1::span<unsigned char const, 18446744073709551615ul>>, std::__1::optional<WTF::String>)>&&) at /Volumes/Timothy/Work/Safari/OpenSource/Source/WebKit/Platform/IPC/HandleMessage.h:145 #9 0x000000013a5dc50c in void IPC::handleMessageAsync<Messages::WebExtensionContext::StorageGet, WebKit::WebExtensionContext, WebKit::WebExtensionContext, void (WTF::ObjectIdentifierGeneric<WebKit::WebPageProxyIdentifierType, WTF::ObjectIdentifierMainThreadAccessTraits>, WebKit::WebExtensionStorageType, std::__1::span<unsigned char const, 18446744073709551615ul> const&, WTF::CompletionHandler<void (std::__1::optional<std::__1::span<unsigned char const, 18446744073709551615ul>>, std::__1::optional<WTF::String>)>&&)>(IPC::Connection&, IPC::Decoder&, WebKit::WebExtensionContext*, void (WebKit::WebExtensionContext::*)(WTF::ObjectIdentifierGeneric<WebKit::WebPageProxyIdentifierType, WTF::ObjectIdentifierMainThreadAccessTraits>, WebKit::WebExtensionStorageType, std::__1::span<unsigned char const, 18446744073709551615ul> const&, WTF::CompletionHandler<void (std::__1::optional<std::__1::span<unsigned char const, 18446744073709551615ul>>, std::__1::optional<WTF::String>)>&&)) at /Volumes/Timothy/Work/Safari/OpenSource/Source/WebKit/Platform/IPC/HandleMessage.h:337 #10 0x000000013a5d6094 in WebKit::WebExtensionContext::didReceiveMessage(IPC::Connection&, IPC::Decoder&) at /Volumes/Timothy/Work/Safari/OpenSource/WebKitBuild/Debug/DerivedSources/WebKit/WebExtensionContextMessageReceiver.cpp:197 #11 0x000000013ada9dc4 in IPC::MessageReceiverMap::dispatchMessage(IPC::Connection&, IPC::Decoder&) at /Volumes/Timothy/Work/Safari/OpenSource/Source/WebKit/Platform/IPC/MessageReceiverMap.cpp:129
Attachments
Add attachment
proposed patch, testcase, etc.
Radar WebKit Bug Importer
Comment 1
2024-01-24 11:15:57 PST
<
rdar://problem/121538792
>
Timothy Hatcher
Comment 2
2024-01-24 11:16:30 PST
`errorString` is empty / null.
Timothy Hatcher
Comment 3
2024-01-24 11:23:19 PST
Steps: Navigation to a new tab with the UserScripts extension (granted access to all pages). ASSERTs right away when the tabs starts loading.
Kiara Rose
Comment 4
2024-01-24 14:34:40 PST
Pull request:
https://github.com/WebKit/WebKit/pull/23199
EWS
Comment 5
2024-01-24 15:06:33 PST
Committed
273448@main
(4522d41c15c5): <
https://commits.webkit.org/273448@main
> Reviewed commits have been landed. Closing PR #23199 and removing active labels.
Note
You need to
log in
before you can comment on or make changes to this bug.
Top of Page
Format For Printing
XML
Clone This Bug