[GLIB] WebDriver: browser close not correctly detected on session close in some cases
authorcarlosgc@webkit.org <carlosgc@webkit.org@268f45cc-cd09-0410-ab3c-d52691b4dbfc>
Fri, 4 Jan 2019 11:34:01 +0000 (11:34 +0000)
committercarlosgc@webkit.org <carlosgc@webkit.org@268f45cc-cd09-0410-ab3c-d52691b4dbfc>
Fri, 4 Jan 2019 11:34:01 +0000 (11:34 +0000)
commit1a845b960f2ab1eccdb3669c1ef9d3674c4acdd3
tree8ac048f270ac352ff86ec1a2633b9d6bb131dbdf
parentf6b5b906c6d8ecc92100168ba5b064a31a7344ae
[GLIB] WebDriver: browser close not correctly detected on session close in some cases
https://bugs.webkit.org/show_bug.cgi?id=193104

Reviewed by Michael Catanzaro.

This happens when the dbus connection is closed right before the response to SendMessageToBackend message is
going to be sent. In that case, g_dbus_connection_call async ready handler generates an error before the close
signal is emitted. Then, the close commands try to handle the error checking if SessionHost::isConnected(), but
it still returns true, because the browser is still alive, but the dbus connection has been closed.

* glib/SessionHostGlib.cpp:
(WebDriver::SessionHost::isConnected const): Session is connected when launching or when dbus connection hasn't
been closed.

git-svn-id: https://svn.webkit.org/repository/webkit/trunk@239606 268f45cc-cd09-0410-ab3c-d52691b4dbfc
Source/WebDriver/ChangeLog
Source/WebDriver/glib/SessionHostGlib.cpp