Bug 240699 - ASSERT(status == U_ZERO_ERROR) under SearchBuffer::search() when typing in the url bar in the iOS simulator
Summary: ASSERT(status == U_ZERO_ERROR) under SearchBuffer::search() when typing in th...
Status: RESOLVED FIXED
Alias: None
Product: WebKit
Classification: Unclassified
Component: Text (show other bugs)
Version: Safari Technology Preview
Hardware: Unspecified Unspecified
: P2 Normal
Assignee: Simon Fraser (smfr)
URL:
Keywords: InRadar
Depends on:
Blocks:
 
Reported: 2022-05-19 19:37 PDT by Simon Fraser (smfr)
Modified: 2022-05-19 22:50 PDT (History)
3 users (show)

See Also:


Attachments

Note You need to log in before you can comment on or make changes to this bug.
Description Simon Fraser (smfr) 2022-05-19 19:37:51 PDT
Had a google search page loaded. Typed “wikipedia.org” into the MobileSafari URL bar. WebKit hits an assertion:

Status is U_USING_DEFAULT_WARNING.

(lldb) bt
* thread #1, queue = 'com.apple.main-thread', stop reason = EXC_BAD_ACCESS (code=1, address=0xbbadbeef)
  * frame #0: 0x00000004e3eb003e JavaScriptCore`::WTFCrash() at Assertions.cpp:322:35
    frame #1: 0x0000000508fff35b WebCore`WTFCrashWithInfo((null)=2237, (null)="./editing/TextIterator.cpp", (null)="size_t WebCore::SearchBuffer::search(size_t &)", (null)=2294) at Assertions.h:748:5
    frame #2: 0x000000050c77d35e WebCore`WebCore::SearchBuffer::search(this=0x00007ff7b2866a70, start=0x00007ff7b2866818) at TextIterator.cpp:2237:9
    frame #3: 0x000000050c77c3b1 WebCore`WebCore::forEachMatch(range=0x00007ff7b2866ce0, target={ length = 1, contents = 'w' }, options={ size = 4 }, match=0x00007ff7b2866b98)> const&) at TextIterator.cpp:2502:44
    frame #4: 0x000000050c77c80a WebCore`WebCore::findPlainText(range=0x00007ff7b2866ce0, target={ length = 1, contents = 'w' }, options={ size = 4 }) at TextIterator.cpp:2570:5
    frame #5: 0x000000050c713bec WebCore`WebCore::Editor::countMatchesForText(this=0x00007faad9414390, target={ length = 1, contents = 'w' }, range= Has Value=false , options={ size = 4 }, limit=1001, markMatches=false, matches={ size = 0, capacity = 0 }) at Editor.cpp:3629:28
    frame #6: 0x000000050d202a86 WebCore`WebCore::Page::findMatchesForText(this=0x00007faad9863600, target={ length = 1, contents = 'w' }, options={ size = 4 }, maxMatchCount=1001, shouldHighlightMatches=DoNotHighlightMatches, shouldMarkMatches=DoNotMarkMatches) at Page.cpp:897:39
    frame #7: 0x000000050d202b65 WebCore`WebCore::Page::countFindMatches(this=0x00007faad9863600, target={ length = 1, contents = 'w' }, options={ size = 4 }, maxMatchCount=1001) at Page.cpp:911:12
    frame #8: 0x00000004c8bab12a WebKit`WebKit::FindController::countStringMatches(this=0x00007faad917cf70, string={ length = 1, contents = 'w' }, options={ size = 4 }, maxMatchCount=1000) at FindController.cpp:80:45
    frame #9: 0x00000004c8ddd20e WebKit`WebKit::WebPage::countStringMatches(this=0x00007faad9815408, string={ length = 1, contents = 'w' }, options={ size = 4 }, maxMatchCount=1000) at WebPage.cpp:4907:22
    frame #10: 0x00000004c8f3c70e WebKit`void IPC::callMemberFunctionImpl<WebKit::WebPage, void (WebKit::WebPage::*)(WTF::String const&, WTF::OptionSet<WebKit::FindOptions>, unsigned int), std::__1::tuple<WTF::String, WTF::OptionSet<WebKit::FindOptions>, unsigned int>, 0ul, 1ul, 2ul>(object=0x00007faad9815408, function=d0 d1 dd c8 04 00 00 00 00 00 00 00 00 00 00 00, args=size=3, (null)=std::__1::index_sequence<0UL, 1UL, 2UL> @ 0x00007ff7b2866f48)(WTF::String const&, WTF::OptionSet<WebKit::FindOptions>, unsigned int), std::__1::tuple<WTF::String, WTF::OptionSet<WebKit::FindOptions>, unsigned int>&&, std::__1::integer_sequence<unsigned long, 0ul, 1ul, 2ul>) at HandleMessage.h:125:5
    frame #11: 0x00000004c8f3c62d WebKit`void IPC::callMemberFunction<WebKit::WebPage, void (WebKit::WebPage::*)(WTF::String const&, WTF::OptionSet<WebKit::FindOptions>, unsigned int), std::__1::tuple<WTF::String, WTF::OptionSet<WebKit::FindOptions>, unsigned int>, std::__1::integer_sequence<unsigned long, 0ul, 1ul, 2ul> >(args=size=3, object=0x00007faad9815408, function=d0 d1 dd c8 04 00 00 00 00 00 00 00 00 00 00 00)(WTF::String const&, WTF::OptionSet<WebKit::FindOptions>, unsigned int)) at HandleMessage.h:131:5
    frame #12: 0x00000004c8e5ddca WebKit`void IPC::handleMessage<Messages::WebPage::CountStringMatches, WebKit::WebPage, void (WebKit::WebPage::*)(WTF::String const&, WTF::OptionSet<WebKit::FindOptions>, unsigned int)>(connection=0x00007faad8f0c210, decoder=0x00007faad8f9a460, object=0x00007faad9815408, function=d0 d1 dd c8 04 00 00 00 00 00 00 00 00 00 00 00)(WTF::String const&, WTF::OptionSet<WebKit::FindOptions>, unsigned int)) at HandleMessage.h:253:5
...
Comment 1 Simon Fraser (smfr) 2022-05-19 19:38:02 PDT
<rdar://92182174>
Comment 2 Simon Fraser (smfr) 2022-05-19 19:39:44 PDT
Pull request: https://github.com/WebKit/WebKit/pull/814
Comment 3 EWS 2022-05-19 22:50:12 PDT
Committed r294531 (250786@main): <https://commits.webkit.org/250786@main>

Reviewed commits have been landed. Closing PR #814 and removing active labels.