Bug 179884

Summary: [WPE] Test /wpe/WebKitWebView/backend always fails when run with run-wpe-tests and headless backend
Product: WebKit Reporter: Carlos Garcia Campos <cgarcia>
Component: WPE WebKitAssignee: Nobody <webkit-unassigned>
Status: NEW ---    
Severity: Normal CC: bugs-noreply, mcatanzaro
Priority: P2    
Version: WebKit Nightly Build   
Hardware: Unspecified   
OS: Unspecified   
See Also: https://bugs.webkit.org/show_bug.cgi?id=184357

Description Carlos Garcia Campos 2017-11-20 06:33:41 PST
This is weird, because only happen with that combination:

$ Tools/Scripts/run-wpe-tests --verbose --display-server=headless bin/TestWebKitAPI/WPE/TestWebKitWebView
TEST: bin/TestWebKitAPI/WPE/TestWebKitWebView... (pid=14128)
  /wpe/WebKitWebView/web-context:                                      OK
  /wpe/WebKitWebView/web-context-lifetime:                             OK
  /wpe/WebKitWebView/backend:                                          FAIL
GTester: last random seed: R02S3b5b71bf03a22e6b79cc296e38e870ce
(pid=14206)
  /wpe/WebKitWebView/ephemeral:                                        OK
...

$ Tools/Scripts/run-wpe-tests --verbose --display-server=wayland bin/TestWebKitAPI/WPE/TestWebKitWebView
TEST: bin/TestWebKitAPI/WPE/TestWebKitWebView... (pid=14523)
  /wpe/WebKitWebView/web-context:                                      OK
  /wpe/WebKitWebView/web-context-lifetime:                             OK
  /wpe/WebKitWebView/backend:                                          OK
  /wpe/WebKitWebView/ephemeral:                                        OK
...

$ WebKitBuild/Release/bin/TestWebKitAPI/WPE/TestWebKitWebView
/wpe/WebKitWebView/web-context: OK
/wpe/WebKitWebView/web-context-lifetime: OK
/wpe/WebKitWebView/backend: OK
/wpe/WebKitWebView/ephemeral: OK
...

$ WPE_USE_HEADLESS_VIEW_BACKEND=1 WebKitBuild/Release/bin/TestWebKitAPI/WPE/TestWebKitWebView
/wpe/WebKitWebView/web-context: OK
/wpe/WebKitWebView/web-context-lifetime: OK
/wpe/WebKitWebView/backend: OK
/wpe/WebKitWebView/ephemeral: OK
...
Comment 1 Carlos Garcia Campos 2017-11-20 06:37:59 PST
#0  g_source_unref (source=0x80) at gmain.c:2179
#1  0x00007ff084b76e6d in DRM::ViewBackend::~ViewBackend() () from /home/cgarcia/gnome/lib/libWPEBackend-mesa.so.0
#2  0x00007ff084b76fb4 in DRM::ViewBackend::~ViewBackend() () from /home/cgarcia/gnome/lib/libWPEBackend-mesa.so.0
#3  0x00007ff084b774cc in {lambda(void*)#4}::operator()(void*) const () from /home/cgarcia/gnome/lib/libWPEBackend-mesa.so.0
#4  0x00007ff084b774ec in {lambda(void*)#4}::_FUN(void*) () from /home/cgarcia/gnome/lib/libWPEBackend-mesa.so.0
#5  0x00007ff09025e618 in wpe_view_backend_destroy () from /home/cgarcia/gnome/lib/libWPEBackend.so.0
#6  0x00007ff08d893de2 in webkitWebViewBackendUnref(_WebKitWebViewBackend*) () from /home/cgarcia/src/git/gnome/WebKit-WPE/WebKitBuild/Release/lib/libWPEWebKit.so.1
#7  0x00007ff08d8839c4 in webkit_web_view_finalize(_GObject*) () from /home/cgarcia/src/git/gnome/WebKit-WPE/WebKitBuild/Release/lib/libWPEWebKit.so.1
#8  0x00007ff0854f63c2 in g_object_unref (_object=0x55e7c4c713a0) at gobject.c:3330
#9  0x000055e7c379e0ee in testWebViewWebBackend(Test*, void const*) ()
#10 0x00007ff0907bfdda in test_case_run (tc=0x55e7c4afee70) at gtestutils.c:2237
#11 g_test_run_suite_internal (suite=suite@entry=0x55e7c4afdc20, path=path@entry=0x0) at gtestutils.c:2321
#12 0x00007ff0907bfd0b in g_test_run_suite_internal (suite=suite@entry=0x55e7c4afdc00, path=path@entry=0x0) at gtestutils.c:2333
#13 0x00007ff0907bfd0b in g_test_run_suite_internal (suite=suite@entry=0x55e7c4afd7a0, path=path@entry=0x0) at gtestutils.c:2333
#14 0x00007ff0907bffa2 in g_test_run_suite (suite=0x55e7c4afd7a0) at gtestutils.c:2409
#15 0x00007ff0907bffc1 in g_test_run () at gtestutils.c:1674
#16 0x000055e7c379abd4 in main ()

I tried making sure m_source is initialized in IPC::Host, but it didn't fix this crash.