Bug 258289

Summary: fast/editing/document-leak-altered-text-field.html is flaky
Product: WebKit Reporter: Fujii Hironori <Hironori.Fujii>
Component: DOMAssignee: Chris Dumez <cdumez>
Status: RESOLVED FIXED    
Severity: Normal CC: ap, cdumez, webkit-bug-importer
Priority: P2 Keywords: InRadar
Version: WebKit Nightly Build   
Hardware: Unspecified   
OS: Unspecified   
See Also: https://bugs.webkit.org/show_bug.cgi?id=256404
https://bugs.webkit.org/show_bug.cgi?id=258356
https://bugs.webkit.org/show_bug.cgi?id=258328

Description Fujii Hironori 2023-06-19 18:29:30 PDT
It's flaky since 264022@main (bug#256404) added fast/editing/document-leak-altered-text-field.html
https://results.webkit.org/?suite=layout-tests&test=fast%2Fediting%2Fdocument-leak-altered-text-field.html

This is the first test failure.

Buildbot: builder Apple-Monterey-Debug-AppleSilicon-WK2-Tests build 5711 (264037@main)
https://build.webkit.org/#/builders/376/builds/5711

--- /Volumes/Data/worker/Apple-Monterey-Debug-AppleSilicon-WK2-Tests/build/layout-test-results/fast/editing/document-leak-altered-text-field-expected.txt
+++ /Volumes/Data/worker/Apple-Monterey-Debug-AppleSilicon-WK2-Tests/build/layout-test-results/fast/editing/document-leak-altered-text-field-actual.txt
@@ -4,8 +4,9 @@
 
 
 PASS w.document.getElementById('textField').value is "test"
-PASS The Document didn't leak
+FAIL The document leaked
 PASS successfullyParsed is true
+Some tests failed.
 
 TEST COMPLETE
Comment 1 Fujii Hironori 2023-06-19 18:35:21 PDT
Not only random text failure, but also random assertion failures.

Buildbot: builder Apple-Monterey-Debug-WK2-Tests build 7765 (264038@main)
https://build.webkit.org/#/builders/369/builds/7765

2023-05-12 18:53:37.822 com.apple.WebKit.WebContent.Development[79695:31473968] XType: can't switch to GlobalFontRegistry.  XTFontStaticRegistry is not enabled.
ASSERTION FAILED: unifiedTextCheckerEnabled()
editing/Editor.cpp(2808) : void WebCore::Editor::markAllMisspellingsAndBadGrammarInRanges(OptionSet<WebCore::TextCheckingType>, const std::optional<SimpleRange> &, const std::optional<SimpleRange> &, const std::optional<SimpleRange> &)
1   0x3f9e27759 WTFCrash
2   0x3a35bb5cb WTFCrashWithInfo(int, char const*, char const*, int)
3   0x3a7602c42 WebCore::Editor::markAllMisspellingsAndBadGrammarInRanges(WTF::OptionSet<WebCore::TextCheckingType>, std::__1::optional<WebCore::SimpleRange> const&, std::__1::optional<WebCore::SimpleRange> const&, std::__1::optional<WebCore::SimpleRange> const&)
4   0x3a7590e1c WebCore::AlternativeTextController::timerFired()
5   0x3a75be3f9 decltype(*(static_cast<WebCore::AlternativeTextController*&>(fp0)).*fp()) std::__1::__invoke<void (WebCore::AlternativeTextController::*&)(), WebCore::AlternativeTextController*&, void>(void (WebCore::AlternativeTextController::*&)(), WebCore::AlternativeTextController*&)
6   0x3a75be37d std::__1::__bind_return<void (WebCore::AlternativeTextController::*)(), std::__1::tuple<WebCore::AlternativeTextController*>, std::__1::tuple<>, __is_valid_bind_return<void (WebCore::AlternativeTextController::*)(), std::__1::tuple<WebCore::AlternativeTextController*>, std::__1::tuple<> >::value>::type std::__1::__apply_functor<void (WebCore::AlternativeTextController::*)(), std::__1::tuple<WebCore::AlternativeTextController*>, 0ul, std::__1::tuple<> >(void (WebCore::AlternativeTextController::*&)(), std::__1::tuple<WebCore::AlternativeTextController*>&, std::__1::__tuple_indices<0ul>, std::__1::tuple<>&&)
7   0x3a75be330 std::__1::__bind_return<void (WebCore::AlternativeTextController::*)(), std::__1::tuple<WebCore::AlternativeTextController*>, std::__1::tuple<>, __is_valid_bind_return<void (WebCore::AlternativeTextController::*)(), std::__1::tuple<WebCore::AlternativeTextController*>, std::__1::tuple<> >::value>::type std::__1::__bind<void (WebCore::AlternativeTextController::*&)(), WebCore::AlternativeTextController*>::operator()<>()
8   0x3a75be2c9 WTF::Detail::CallableWrapper<std::__1::__bind<void (WebCore::AlternativeTextController::*&)(), WebCore::AlternativeTextController*>, void>::call()
9   0x3a35dacf2 WTF::Function<void ()>::operator()() const
10  0x3a3764e79 WebCore::Timer::fired()
11  0x3a86610a6 WebCore::ThreadTimers::sharedTimerFiredInternal()
12  0x3a866ce81 WebCore::ThreadTimers::setSharedTimer(WebCore::SharedTimer*)::$_0::operator()() const
13  0x3a866ce19 WTF::Detail::CallableWrapper<WebCore::ThreadTimers::setSharedTimer(WebCore::SharedTimer*)::$_0, void>::call()
14  0x3a35dacf2 WTF::Function<void ()>::operator()() const
15  0x3a85f3b61 WebCore::MainThreadSharedTimer::fired()
16  0x3a8718096 WebCore::timerFired(__CFRunLoopTimer*, void*)
17  0x7ff80df41899 __CFRUNLOOP_IS_CALLING_OUT_TO_A_TIMER_CALLBACK_FUNCTION__
18  0x7ff80df41388 __CFRunLoopDoTimer
19  0x7ff80df40ef8 __CFRunLoopDoTimers
20  0x7ff80df27646 __CFRunLoopRun
21  0x7ff80df267ac CFRunLoopRunSpecific
22  0x7ff80ed7ad9a -[NSRunLoop(NSRunLoop) runMode:beforeDate:]
23  0x7ff80ee058d7 -[NSRunLoop(NSRunLoop) run]
24  0x7ff80dba6816 _xpc_objc_main
25  0x7ff80dba6239 xpc_main
26  0x3cfea6364 WebKit::XPCServiceMain(int, char const**)
27  0x3d204865b WKXPCServiceMain
28  0x10939df22 main
29  0x116e4c51e (null)
com.apple.WebKit.WebContent.Development terminated (pid 79695) for reason: crash
Comment 2 Chris Dumez 2023-06-20 11:45:52 PDT
Pull request: https://github.com/WebKit/WebKit/pull/15112
Comment 3 EWS 2023-06-20 16:13:34 PDT
Committed 265339@main (4860f7c8dba8): <https://commits.webkit.org/265339@main>

Reviewed commits have been landed. Closing PR #15112 and removing active labels.
Comment 4 Radar WebKit Bug Importer 2023-06-20 16:14:17 PDT
<rdar://problem/111068630>
Comment 5 Alexey Proskuryakov 2023-06-25 16:15:27 PDT
Looks like this fully resolved the issue, but TestExpectation hasn't been removed:

LayoutTests/platform/mac/TestExpectations:2732:[ Debug ] fast/editing/document-leak-altered-text-field.html [ Pass Crash ]

Chris, would you be willing to take care of this?
Comment 6 Chris Dumez 2023-06-25 20:09:05 PDT
(In reply to Alexey Proskuryakov from comment #5)
> Looks like this fully resolved the issue, but TestExpectation hasn't been
> removed:
> 
> LayoutTests/platform/mac/TestExpectations:2732:[ Debug ]
> fast/editing/document-leak-altered-text-field.html [ Pass Crash ]
> 
> Chris, would you be willing to take care of this?

Sure
Comment 7 Chris Dumez 2023-06-25 20:12:16 PDT
Re-opening for pull request https://github.com/WebKit/WebKit/pull/15284
Comment 8 EWS 2023-06-25 20:16:18 PDT
Committed 265505@main (4244734774f7): <https://commits.webkit.org/265505@main>

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