Skip to content

Commit 19a800f

Browse files
reduce diff
1 parent b86509f commit 19a800f

2 files changed

Lines changed: 11 additions & 5 deletions

File tree

src/Simplex/Messaging/Agent.hs

Lines changed: 9 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -271,9 +271,7 @@ getSMPAgentClient_ clientId cfg initServers@InitialAgentServers {smp, xftp, netC
271271
currentTs <- liftIO getCurrentTime
272272
notices <- liftIO $ withTransaction store (`getClientNotices` presetServers) `catchAll_` pure []
273273
env <- ask
274-
let processMsg c t =
275-
agentOperationBracket c AORcvNetwork waitUntilActive (processSMPTransmissions c t) `runReaderT` env
276-
`catchOwn` \e -> atomically $ writeTBQueue (subQ c) ("", "", AEvt SAEConn $ ERR $ CRITICAL True $ "subscriber error: " <> show e)
274+
let processMsg c t = subscriber c t `runReaderT` env
277275
c@AgentClient {acThread} <- liftIO $ newAgentClient clientId initServers currentTs notices processMsg env
278276
t <- runAgentThreads c `forkFinally` const (liftIO $ disconnectAgentClient c)
279277
atomically . writeTVar acThread . Just =<< mkWeakThreadId t
@@ -2985,6 +2983,14 @@ getNextSMPServer :: AgentClient -> UserId -> [SMPServer] -> AM SMPServerWithAuth
29852983
getNextSMPServer c userId = getNextServer c userId storageSrvs
29862984
{-# INLINE getNextSMPServer #-}
29872985

2986+
subscriber :: AgentClient -> ServerTransmissionBatch SMPVersion ErrorType BrokerMsg -> AM' ()
2987+
subscriber c@AgentClient {subQ} t = run $
2988+
agentOperationBracket c AORcvNetwork waitUntilActive $
2989+
processSMPTransmissions c t
2990+
where
2991+
run a = a `catchOwn` \e -> notify $ CRITICAL True $ "subscriber error: " <> show e
2992+
notify err = atomically $ writeTBQueue subQ ("", "", AEvt SAEConn $ ERR err)
2993+
29882994

29892995
cleanupManager :: AgentClient -> AM' ()
29902996
cleanupManager c@AgentClient {subQ} = do

src/Simplex/Messaging/Notifications/Server/Env.hs

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -125,10 +125,10 @@ newNtfServerEnv config@NtfServerConfig {pushQSize, smpAgentCfg, apnsConfig, dbSt
125125
store <- newNtfDbStore dbStoreConfig
126126
tlsServerCreds <- loadServerCredential ntfCredentials
127127
XV.Fingerprint fp <- loadFingerprint ntfCredentials
128+
let dbService = if useServiceCreds then Just $ mkDbService random store else Nothing
128129
pushServer <- newNtfPushServer pushQSize apnsConfig
129130
serverStats <- newNtfServerStats =<< getCurrentTime
130-
let dbService = if useServiceCreds then Just $ mkDbService random store else Nothing
131-
processMsg = mkProcessMsg store pushServer serverStats
131+
let processMsg = mkProcessMsg store pushServer serverStats
132132
subscriber <- newNtfSubscriber smpAgentCfg processMsg dbService random
133133
pure NtfEnv {config, subscriber, pushServer, store, random, tlsServerCreds, serverIdentity = C.KeyHash fp, serverStats}
134134
where

0 commit comments

Comments
 (0)