summaryrefslogtreecommitdiffhomepage
path: root/src/IPC
AgeCommit message (Collapse)Author
2014-08-09hlint refactoringsReto Hablützel
2013-02-04Removing uneeded uses of hiding (catch)Jose Antonio Ortega Ruiz
2012-08-22Refactor MVar SignalType to TMVar SignalTypeJochen Keil
Replace MVar with TMVar from the STM package. This is common for ghc now. Since STM is used everywhere else in the src it also adds no additional dependencies. The main reason for this switch is, that readMVar, swapMVar, etc. are only atomically if there is no other producer for this MVar i.e. putMVar. For example readMVar is a combination of putMVar and takeMVar. Due to scheduling and readMVar's non-atomicity it is possible that values written to the MVar appear in the wrong order. Using TMVar fixes this problem, since it allows really atomical read/swap operations.
2012-08-22Allow multiple signals over dbus at onceJochen Keil
It's easy to implement, since arguments to dbus method calls are handed over as list anyway. It also removes the need for safeHead. Bottom line: extra functionality without extra cost.
2012-08-12Catch error when DBus connection failsJochen Keil
connectSession throws a ClientError Exception when DBUS_SESSION_BUS_ADDRESS is unset. Without exception handler this will result in program termination. Since the DBus handler merely sends a signal to the event loop it does no harm when it won't run. Normal operation will continue just if compiled without dbus support.
2012-08-10Move the IsVariant SignalType instance to Signal moduleJochen Keil
This belongs here, otherwise ghc will complain about orphaned instances
2012-08-10Move safeHead to Plugins.UtilsJochen Keil
safeHead is a very general utility function with suits better into a common Util module.
2012-08-10Add an initial (working) version of the DBus IPC moduleJochen Keil