summaryrefslogtreecommitdiffhomepage
path: root/Plugins
diff options
context:
space:
mode:
authorAdam Vogt <vogt.adam@gmail.com>2009-10-11 03:56:18 +0200
committerAdam Vogt <vogt.adam@gmail.com>2009-10-11 03:56:18 +0200
commit638a9d5a9022e451e6eea4cc66eb1cf4d2d65f03 (patch)
tree4b604e4f9bbb7d9c34fc24f298f34dfbf3f47e4b /Plugins
parent1fd673d50d48ee3f7a4dc86eb6488cd26d976b4f (diff)
downloadxmobar-638a9d5a9022e451e6eea4cc66eb1cf4d2d65f03.tar.gz
xmobar-638a9d5a9022e451e6eea4cc66eb1cf4d2d65f03.tar.bz2
Support for base 4 without base-3 compatibility
Ignore-this: 6846a123ade5dc1164841e62beabbf71 darcs-hash:20091011015618-1499c-f91811df4a05f6e4d236faaa5f4b4050613253e1.gz
Diffstat (limited to 'Plugins')
-rw-r--r--Plugins/Monitors/Common.hs4
-rw-r--r--Plugins/StdinReader.hs4
2 files changed, 4 insertions, 4 deletions
diff --git a/Plugins/Monitors/Common.hs b/Plugins/Monitors/Common.hs
index 1b5cb60..7ac10c2 100644
--- a/Plugins/Monitors/Common.hs
+++ b/Plugins/Monitors/Common.hs
@@ -55,7 +55,7 @@ import Data.List
import Numeric
import Text.ParserCombinators.Parsec
import System.Console.GetOpt
-import Control.Exception (handle)
+import Control.Exception (SomeException,handle)
import Plugins
-- $monitor
@@ -149,7 +149,7 @@ runM args conf action r cb = do go
where go = do
c <- conf
let ac = doArgs args action
- s <- handle (const $ return "error") $ runReaderT ac c
+ s <- handle (\x -> const (return "error") $ x `asTypeOf` (undefined::SomeException)) $ runReaderT ac c
cb s
tenthSeconds r
go
diff --git a/Plugins/StdinReader.hs b/Plugins/StdinReader.hs
index a12b722..0c075e6 100644
--- a/Plugins/StdinReader.hs
+++ b/Plugins/StdinReader.hs
@@ -18,7 +18,7 @@ import Prelude hiding (catch)
import System.Posix.Process
import System.Exit
import System.IO
-import Control.Exception (catch)
+import Control.Exception (SomeException(..),catch)
import Plugins
data StdinReader = StdinReader
@@ -26,7 +26,7 @@ data StdinReader = StdinReader
instance Exec StdinReader where
start StdinReader cb = do
- cb =<< catch (hGetLineSafe stdin) (\e -> do hPrint stderr e; return "")
+ cb =<< catch (hGetLineSafe stdin) (\(SomeException e) -> do hPrint stderr e; return "")
eof <- hIsEOF stdin
if eof
then exitImmediately ExitSuccess