Bug 224487

Summary: [GTK4] WTR crash in PlatformWebView::dismissAllPopupMenus()
Product: WebKit Reporter: Carlos Garcia Campos <cgarcia>
Component: Tools / TestsAssignee: Nobody <webkit-unassigned>
Status: RESOLVED FIXED    
Severity: Normal CC: bugs-noreply, pnormand, webkit-bug-importer
Priority: P2 Keywords: Gtk, InRadar
Version: WebKit Nightly Build   
Hardware: Unspecified   
OS: Unspecified   
Attachments:
Description Flags
Patch none

Description Carlos Garcia Campos 2021-04-13 07:48:45 PDT
This is because we are using a for loop to iterate children that are destroyed. We should not be destroying the children, though, we should just hide them, since they are owned by the web view.

Thread 1 (Thread 0x7f652fd72f00 (LWP 14765)):
#0  0x00007f6532bfc29e in gtk_widget_get_next_sibling (widget=0x55e0bee56260) at ../gtk/gtkwidget.c:11879
#1  0x000055e0b80df0f5 in WTR::PlatformWebView::dismissAllPopupMenus() ()
#2  0x000055e0b80dfb65 in WTR::TestController::platformResetStateToConsistentValues(WTR::TestOptions const&) ()
#3  0x000055e0b80b8bb3 in WTR::TestController::resetStateToConsistentValues(WTR::TestOptions const&, WTR::TestController::ResetStage) ()
#4  0x000055e0b80c6d85 in WTR::TestInvocation::invoke() ()
#5  0x000055e0b80afbaa in WTR::TestController::runTest(char const*) ()
#6  0x000055e0b80b027f in WTR::TestController::runTestingServerLoop() ()
#7  0x000055e0b80b0848 in WTR::TestController::TestController(int, char const**) ()
#8  0x000055e0b80a004c in main ()
Comment 1 Carlos Garcia Campos 2021-04-13 07:50:09 PDT
Created attachment 425872 [details]
Patch
Comment 2 EWS 2021-04-13 08:30:56 PDT
Committed r275885 (236450@main): <https://commits.webkit.org/236450@main>

All reviewed patches have been landed. Closing bug and clearing flags on attachment 425872 [details].
Comment 3 Radar WebKit Bug Importer 2021-04-13 08:31:14 PDT
<rdar://problem/76592882>