diff --git a/ghc/lib/misc/Socket.lhs b/ghc/lib/misc/Socket.lhs
index 94b97d8042d4be464ce3777134f849c638ba350e..85beb2a4628e3af911368edf94f4ead430e36939 100644
--- a/ghc/lib/misc/Socket.lhs
+++ b/ghc/lib/misc/Socket.lhs
@@ -134,7 +134,7 @@ accept :: Socket 		-- Listening Socket
 accept sock = do
  ~(sock', (SockAddrInet _ haddr)) <- SocketPrim.accept sock
  (HostEntry peer _ _ _)           <- getHostByAddr AF_INET haddr
- handle				  <- socketToHandle sock ReadWriteMode
+ handle				  <- socketToHandle sock' ReadWriteMode
  return (handle, peer)
 
 \end{code}