diff --git a/hzulip.cabal b/hzulip.cabal
--- a/hzulip.cabal
+++ b/hzulip.cabal
@@ -1,5 +1,5 @@
 name:                hzulip
-version:             0.4.0.0
+version:             0.4.0.1
 synopsis:            A haskell wrapper for the Zulip API.
 description:         This a Zulip API wrapper for Haskell.
 homepage:            https://github.com/yamadapc/hzulip
diff --git a/src/HZulip.hs b/src/HZulip.hs
--- a/src/HZulip.hs
+++ b/src/HZulip.hs
@@ -134,7 +134,7 @@
     q <- registerQueue z etypes False
     handle (tryAgain q) (loop q)
   where tryAgain :: Queue -> SomeException -> IO ()
-        tryAgain q = const $ threadDelay 1000000 >> loop q
+        tryAgain q = const $ threadDelay 1000000 >> handle (tryAgain q) (loop q)
         loop q = getEvents z q False >>=
                  \(q', evts) -> mapM_ f evts >>
                                 loop q'
