Branch: refs/heads/main
  Home:   https://github.com/WebKit/WebKit
  Commit: 971943d9b665ace53705eb78bfd31887b9a08eee
      
https://github.com/WebKit/WebKit/commit/971943d9b665ace53705eb78bfd31887b9a08eee
  Author: Michael Catanzaro <[email protected]>
  Date:   2023-08-18 (Fri, 18 Aug 2023)

  Changed paths:
    M Source/WebKit/UIProcess/Launcher/glib/XDGDBusProxy.cpp

  Log Message:
  -----------
  [GLib] Process launching hangs if xdg-dbus-proxy is not installed
https://bugs.webkit.org/show_bug.cgi?id=257905

Reviewed by Carlos Garcia Campos.

Currently if xdg-dbus-proxy is not installed or if it fails to start for
any reason, then after attempting to run it under bwrap, we do a
blocking read() and hang forever waiting for it to respond to us.
Instead, let's simultaneously do an async read while also checking to
see if the subprocess has quit. If it fails to spawn, then we can crash
properly rather than just hang.

Although I have *technically* removed the synchronous I/O, we still need
to block here, so the spirit of the FIXME that hopes to avoid blocking
is not satisfied. Nevertheless, I don't see a realistic path to avoid
blocking, so I'm going to remove the FIXME anyway.

* Source/WebKit/UIProcess/Launcher/glib/XDGDBusProxy.cpp:
(WebKit::waitUntilSyncedOrDie):
(WebKit::XDGDBusProxy::launch):

Canonical link: https://commits.webkit.org/267038@main


_______________________________________________
webkit-changes mailing list
[email protected]
https://lists.webkit.org/mailman/listinfo/webkit-changes

Reply via email to