diff --git a/scalable-server.cabal b/scalable-server.cabal
--- a/scalable-server.cabal
+++ b/scalable-server.cabal
@@ -3,7 +3,7 @@
 Synopsis:            Library for writing fast/scalable TCP-based services
 Description:         Library for writing fast/scalable TCP-based services
 
-Version:             0.2.1
+Version:             0.2.2
 
 License:             BSD3
 
diff --git a/src/Network/Server/ScalableServer.hs b/src/Network/Server/ScalableServer.hs
--- a/src/Network/Server/ScalableServer.hs
+++ b/src/Network/Server/ScalableServer.hs
@@ -78,9 +78,11 @@
 serverListenLoop :: RequestPipeline a -> Socket -> IO ()
 serverListenLoop pipe s = do
     listen s 100
-    forever $ do
-        (c, _) <- accept s
-        forkIO $ connHandler pipe c
+    finally (
+        forever $ do
+            (c, _) <- accept s
+            forkIO $ connHandler pipe c
+        ) $ sClose s
 
 connHandler :: RequestPipeline a -> Socket -> IO ()
 connHandler (RequestPipeline reqParse reqProc size) s = do
