diff --git a/CHANGELOG.md b/CHANGELOG.md
--- a/CHANGELOG.md
+++ b/CHANGELOG.md
@@ -1,6 +1,11 @@
 CHANGES
 =======
 
+Version 0.2.2.1
+---------------
+
+Fix the README
+
 Version 0.2.2
 -------------
 
diff --git a/README.md b/README.md
--- a/README.md
+++ b/README.md
@@ -5,7 +5,7 @@
 writing servers.
 
 ``` haskell
-import qualified System.Immortal as Immortal
+import qualified Control.Immortal as Immortal
 import Control.Concurrent (threadDelay)
 import Control.Monad (forever)
 
diff --git a/immortal.cabal b/immortal.cabal
--- a/immortal.cabal
+++ b/immortal.cabal
@@ -2,9 +2,12 @@
 -- documentation, see http://haskell.org/cabal/users-guide/
 
 name:                immortal
-version:             0.2.2
+version:             0.2.2.1
 synopsis:            Spawn threads that never die (unless told to do so)
--- description:         
+description:         A small library to create threads that never die.
+
+                     This is useful e.g. for writing servers.
+
 homepage:            https://github.com/feuerbach/immortal
 license:             MIT
 license-file:        LICENSE
@@ -17,6 +20,10 @@
   README.md
   CHANGELOG.md
 cabal-version:       >=1.10
+
+source-repository head
+  type:     git
+  location: https://github.com/feuerbach/immortal.git
 
 library
   exposed-modules:     Control.Immortal
diff --git a/tests/test.hs b/tests/test.hs
--- a/tests/test.hs
+++ b/tests/test.hs
@@ -190,6 +190,17 @@
       result <- timeout (10^5) $ Immortal.wait thread
 
       result @?= Just ()
+
+  , testCase "wait waits long enough" $ do
+      tv <- atomically $ newTVar True
+      thread <- Immortal.create $ \t -> do
+        delay
+        atomically $ writeTVar tv False
+        Immortal.stop t
+      _ <- Immortal.wait thread
+
+      v <- atomically $ readTVar tv
+      v @?= False
   ]
 
 keepTrue :: TVar Bool -> IO ()
