summaryrefslogtreecommitdiffhomepage
path: root/src/Bitmap.hs
diff options
context:
space:
mode:
authorAlexander Polakov <plhk@sdf.org>2013-02-04 03:17:50 +0400
committerJose Antonio Ortega Ruiz <jao@gnu.org>2013-02-04 01:23:18 +0100
commit3a7859e2147e714471717d4dcb58d9a19c24cb88 (patch)
tree6e7cb6721fe2c665056723cab218137b0bd39bf1 /src/Bitmap.hs
parent2991a3c18b00bb41197e6a688c4ce07ad52057c0 (diff)
downloadxmobar-3a7859e2147e714471717d4dcb58d9a19c24cb88.tar.gz
xmobar-3a7859e2147e714471717d4dcb58d9a19c24cb88.tar.bz2
Handle XReadBitmapFile errors
Diffstat (limited to 'src/Bitmap.hs')
-rw-r--r--src/Bitmap.hs11
1 files changed, 8 insertions, 3 deletions
diff --git a/src/Bitmap.hs b/src/Bitmap.hs
index c512ff2..9df2f67 100644
--- a/src/Bitmap.hs
+++ b/src/Bitmap.hs
@@ -46,9 +46,14 @@ loadBitmap d w p = do
exist <- doesFileExist p
if exist
then do
- (bw, bh, bp, _, _) <- readBitmapFile d w p
- addFinalizer bp (freePixmap d bp)
- return $ Just $ Bitmap bw bh bp
+ bmap <- readBitmapFile d w p
+ case bmap of
+ Right (bw, bh, bp, _, _) -> do
+ addFinalizer bp (freePixmap d bp)
+ return $ Just $ Bitmap bw bh bp
+ Left err -> do
+ putStrLn err
+ return Nothing
else
return Nothing