From 1fd3a419cc518377bad42c95b6651d1d88c85d5f Mon Sep 17 00:00:00 2001 From: Joey Hess Date: Mon, 12 Oct 2015 13:00:22 -0400 Subject: avoid ugly error about MVar if the sqlite worker thread crashes --- Database/Handle.hs | 3 ++- 1 file changed, 2 insertions(+), 1 deletion(-) (limited to 'Database') diff --git a/Database/Handle.hs b/Database/Handle.hs index 1fd9f7834..439e7c18b 100644 --- a/Database/Handle.hs +++ b/Database/Handle.hs @@ -137,7 +137,8 @@ queryDb (DbHandle _ jobs _) a = do res <- newEmptyMVar putMVar jobs $ QueryJob $ liftIO . putMVar res =<< tryNonAsync a - either throwIO return =<< takeMVar res + (either throwIO return =<< takeMVar res) + `catchNonAsync` (const $ error "sqlite query crashed") closeDb :: DbHandle -> IO () closeDb h@(DbHandle worker jobs _) = do -- cgit v1.2.3