From 4a27b6a66f7c9d60713102a225477de955924123 Mon Sep 17 00:00:00 2001 From: Saku Laesvuori Date: Sat, 19 Apr 2025 21:51:54 +0300 Subject: [PATCH] =?UTF-8?q?=C3=84l=C3=A4=20kaadu=20virheeseen=20tietovaran?= =?UTF-8?q?non=20olessa=20jo=20alustettu?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- src/Main.hs | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) diff --git a/src/Main.hs b/src/Main.hs index 61f0968..dcf80ab 100644 --- a/src/Main.hs +++ b/src/Main.hs @@ -6,12 +6,12 @@ module Main where import Control.Applicative (optional) import Control.Concurrent (forkIO, threadDelay) -import Control.Exception (onException) +import Control.Exception (onException, catch) import Control.Exception (throwIO) import Control.Monad (void, forever) import Data.Acid (AcidState(..), openLocalState, createCheckpoint, createArchive) import Data.Acid.Remote (skipAuthenticationCheck, acidServerSockAddr, openRemoteStateSockAddr, skipAuthenticationPerform) -import Data.FileStore (gitFileStore, initialize) +import Data.FileStore (gitFileStore, initialize, FileStoreError(RepositoryExists)) import Data.IMF (Mailbox(..), parse, mailbox) import Data.MIME.Charset (defaultCharsets) import Data.Text.Encoding (encodeUtf8) @@ -36,7 +36,7 @@ import TiedoteMD.Debug serverMain :: SockAddr -> Mailbox -> FilePath -> GitOrigin -> FilePath -> Int -> Int -> IO () serverMain socket mail repoPath origin sendmailPath checkpointDelay port = do - initialize $ gitFileStore repoPath + initialize (gitFileStore repoPath) `catch` \RepositoryExists -> pure () acid <- openLocalState $ emptyState _ <- forkIO $ acidServerSockAddr skipAuthenticationCheck socket acid queueMessages acid