packages feed

graceful 0.1.1.0 → 0.1.1.1

raw patch · 2 files changed

+11/−10 lines, 2 files

Files

graceful.cabal view
@@ -2,7 +2,7 @@ -- documentation, see http://haskell.org/cabal/users-guide/  name:                graceful-version:             0.1.1.0+version:             0.1.1.1 synopsis:            Library to write graceful shutdown / upgrade service. description:         Library to write graceful shutdown / upgrade service. license:             BSD3
src/System/Posix/Graceful.hs view
@@ -89,15 +89,16 @@                               , gracefulSettingsPidFile = pidFile                               } sock = do   exist <- doesFileExist pidFile-  when exist $ renameFile pidFile (pidFile ++ ".old")-  clearUnixDomainSocket sockFile-  bracket (socket AF_UNIX Stream 0) close $ \uds -> do-    bindSocket uds $ SockAddrUnix sockFile-    listen uds 1-    args <- getArgs-    pid <- forkProcess $ executeFile binary False args Nothing-    bracket (accept uds) (close . fst) $ \(s, _) -> sendSock s sock-    void $ getProcessStatus True False pid+  when exist $ do+    clearUnixDomainSocket sockFile+    bracket (socket AF_UNIX Stream 0) close $ \uds -> do+      bindSocket uds $ SockAddrUnix sockFile+      listen uds 1+      args <- getArgs+      pid <- forkProcess $ executeFile binary False args Nothing+      bracket (accept uds) (close . fst) $ \(s, _) -> sendSock s sock+      renameFile pidFile (pidFile ++ ".old")+      void $ getProcessStatus True False pid  tryIO :: IO a -> IO (Either IOException a) tryIO = try