diff --git a/System/Log/FastLogger/SingleLogger.hs b/System/Log/FastLogger/SingleLogger.hs
--- a/System/Log/FastLogger/SingleLogger.hs
+++ b/System/Log/FastLogger/SingleLogger.hs
@@ -64,11 +64,12 @@
     mvar <- newEmptyMVar
     buf <- getBuffer bufsize
     _ <- forkIO $ writer bufsize buf fdref tvar ref mvar
-    let kill = do
+    let wakeup = atomically $ modifyTVar' tvar (+ 1)
+        kill = do
             let fin = LogStr (-1) mempty
             atomicModifyIORef' ref (\(old,q) -> ((mempty,fin:old:q),()))
+            wakeup
             takeMVar mvar
-        wakeup = atomically $ modifyTVar' tvar (+ 1)
     return $ SingleLogger {
         slgrRef     = ref
       , slgrKill    = kill
diff --git a/fast-logger.cabal b/fast-logger.cabal
--- a/fast-logger.cabal
+++ b/fast-logger.cabal
@@ -1,5 +1,5 @@
 Name:                   fast-logger
-Version:                3.2.0
+Version:                3.2.1
 Author:                 Kazu Yamamoto <kazu@iij.ad.jp>
 Maintainer:             Kazu Yamamoto <kazu@iij.ad.jp>
 License:                BSD3
