From 26fb68355b4ad95f99b2d14110e683109d0bab3d Mon Sep 17 00:00:00 2001 From: Joey Hess Date: Fri, 26 Oct 2012 19:38:27 -0400 Subject: NetWatcher: When dbus connection is lost, try to reconnect. MountWatcher can't do this, because it uses the session dbus, and won't have access to the new DBUS_SESSION_BUS_ADDRESS if a new session is started. Bumped dbus library version, FD leak in it is fixed. --- Assistant/Threads/MountWatcher.hs | 5 +++++ 1 file changed, 5 insertions(+) (limited to 'Assistant/Threads/MountWatcher.hs') diff --git a/Assistant/Threads/MountWatcher.hs b/Assistant/Threads/MountWatcher.hs index 294f9a972..a5200adfe 100644 --- a/Assistant/Threads/MountWatcher.hs +++ b/Assistant/Threads/MountWatcher.hs @@ -72,6 +72,11 @@ dbusThread st dstatus scanremotes = E.catch (runClient getSessionAddress go) one ) onerr :: E.SomeException -> IO () onerr e = do + {- If the session dbus fails, the user probably + - logged out of their desktop. Even if they log + - back in, we won't have access to the dbus + - session key, so polling is the best that can be + - done in this situation. -} runThreadState st $ warning $ "dbus failed; falling back to mtab polling (" ++ show e ++ ")" pollinstead -- cgit v1.2.3