RESOLVED FIXED278273
[GTK] Move gtk specific code from PlatformDisplay to a new class
https://bugs.webkit.org/show_bug.cgi?id=278273
Summary [GTK] Move gtk specific code from PlatformDisplay to a new class
Carlos Garcia Campos
Reported 2024-08-17 00:01:17 PDT
There's gtk specific code in PlatformDisplay that is only used in the UI process. We can move that to a new display class in WEbKit layer and remove also PlatformDisplayX11 and PlatformDisplayWayland, since they are now unused in the web process. The remaining PlatformDisplay implementations are only used for accelerated compositing, and they always initialize EGL in the constructor, so we can simplify the EGL initialization and make it fatal if there's a failure.
Attachments
Carlos Garcia Campos
Comment 1 2024-08-17 00:26:50 PDT
EWS
Comment 2 2024-08-18 23:23:51 PDT
Committed 282416@main (8db1e051cf4a): <https://commits.webkit.org/282416@main> Reviewed commits have been landed. Closing PR #32343 and removing active labels.
Yanko Kaneti
Comment 3 2024-08-21 23:33:56 PDT
FWIW , with webkitgtk-2.45.90-1.fc42 as found in rawhide, the WebKitWebProces is constantly asserting on Source/WebCore/platform/graphics/PlatformDisplay.cpp:68 This is with Wayland
Yanko Kaneti
Comment 4 2024-08-21 23:35:13 PDT
#0 __pthread_kill_implementation (threadid=<optimized out>, signo=signo@entry=6, no_tid=no_tid@entry=0) at pthread_kill.c:44 #1 0x00007f2154680793 in __pthread_kill_internal (threadid=<optimized out>, signo=6) at pthread_kill.c:78 #2 0x00007f2154627d0e in __GI_raise (sig=sig@entry=6) at ../sysdeps/posix/raise.c:26 #3 0x00007f215460f942 in __GI_abort () at abort.c:79 #4 0x00007f215482cb5f in WTFCrashWithInfo () at WTF/Headers/wtf/Assertions.h:864 #5 0x00007f2156d97b63 in WebCore::PlatformDisplay::sharedDisplay () at /usr/src/debug/webkitgtk-2.45.90-1.fc42.x86_64/Source/WebCore/platform/graphics/PlatformDisplay.cpp:68 #6 WebCore::deinitializeGStreamer () at /usr/src/debug/webkitgtk-2.45.90-1.fc42.x86_64/Source/WebCore/platform/graphics/gstreamer/GStreamerCommon.cpp:555 #7 0x00007f215509d7a2 in WebKit::AuxiliaryProcessMainBase<WebKit::WebProcess, true>::run (this=0x7ffed01f27f0, argc=4, argv=<optimized out>) at /usr/src/debug/webkitgtk-2.45.90-1.fc42.x86_64/Source/WebKit/Shared/AuxiliaryProcessMain.h:73 #8 WebKit::AuxiliaryProcessMain<WebKit::WebProcessMainGtk> (argc=4, argv=<optimized out>) at /usr/src/debug/webkitgtk-2.45.90-1.fc42.x86_64/Source/WebKit/Shared/AuxiliaryProcessMain.h:98 #9 WebKit::WebProcessMain (argc=4, argv=<optimized out>) at /usr/src/debug/webkitgtk-2.45.90-1.fc42.x86_64/Source/WebKit/WebProcess/gtk/WebProcessMainGtk.cpp:106 #10 0x00007f2154611248 in __libc_start_call_main (main=main@entry=0x563eeef57160 <main(int, char**)>, argc=argc@entry=4, argv=argv@entry=0x7ffed01f2988) at ../sysdeps/nptl/libc_start_call_main.h:58 #11 0x00007f215461130b in __libc_start_main_impl (main=0x563eeef57160 <main(int, char**)>, argc=4, argv=0x7ffed01f2988, init=<optimized out>, fini=<optimized out>, rtld_fini=<optimized out>, stack_end=0x7ffed01f2978) at ../csu/libc-start.c:360 #12 0x0000563eeef57095 in _start ()
Carlos Garcia Campos
Comment 5 2024-08-21 23:38:57 PDT
(In reply to Yanko Kaneti from comment #3) > FWIW , with webkitgtk-2.45.90-1.fc42 as found in rawhide, the > WebKitWebProces is constantly asserting on > Source/WebCore/platform/graphics/PlatformDisplay.cpp:68 > > This is with Wayland Is that when closing the browser? or a tab? Could you file a new bug report for this, please?
Yanko Kaneti
Comment 6 2024-08-21 23:41:15 PDT
(In reply to Carlos Garcia Campos from comment #5) > > Is that when closing the browser? or a tab? Could you file a new bug report > for this, please? This is with webkitgtk as used by Evolution. Not the browser.
Yanko Kaneti
Comment 7 2024-08-22 00:07:56 PDT
Filed https://bugs.webkit.org/show_bug.cgi?id=278515 for the ones I could trigger with the MiniBrowser. Not exact steps to reproduce, but some random clicking and opening of links in new windows. The ASSERT there is in different place than the ones when used by Evolution
Yanko Kaneti
Comment 8 2024-08-22 00:27:43 PDT
Sorry for the DUP, I've filed a new one for the PlatformDisplay one https://bugs.webkit.org/show_bug.cgi?id=278516
Note You need to log in before you can comment on or make changes to this bug.