diff options
Diffstat (limited to 'src/Xmobar/Plugins')
| -rw-r--r-- | src/Xmobar/Plugins/StdinReader.hs | 9 | 
1 files changed, 7 insertions, 2 deletions
diff --git a/src/Xmobar/Plugins/StdinReader.hs b/src/Xmobar/Plugins/StdinReader.hs index 18958be..ad7291e 100644 --- a/src/Xmobar/Plugins/StdinReader.hs +++ b/src/Xmobar/Plugins/StdinReader.hs @@ -22,16 +22,21 @@ import Prelude  import System.Posix.Process  import System.Exit  import System.IO -import Control.Exception (SomeException(..), handle)  import Xmobar.Run.Exec  import Xmobar.X11.Actions (stripActions) +import Xmobar.System.Utils (onSomeException)  data StdinReader = StdinReader | UnsafeStdinReader    deriving (Read, Show)  instance Exec StdinReader where    start stdinReader cb = do -    s <- getLine +    s <- +      getLine `onSomeException` +      (\e -> do +         let errorMessage = "xmobar: Received exception " <> show e +         hPrint stderr errorMessage +         cb errorMessage)      cb $ escape stdinReader s      eof <- isEOF      if eof  | 
