diff --git a/src/Simplex/Chat.hs b/src/Simplex/Chat.hs index 0b21795a1f..b61f2f90eb 100644 --- a/src/Simplex/Chat.hs +++ b/src/Simplex/Chat.hs @@ -280,6 +280,7 @@ processChatCommand = \case [] -> pure 1 _ -> withAgent (`createUser` smp) user <- withStore $ \db -> createUserRecord db (AgentUserId auId) p True + setActive ActiveNone atomically . writeTVar u $ Just user pure $ CRActiveUser user ListUsers -> do @@ -288,6 +289,7 @@ processChatCommand = \case APISetActiveUser userId -> do u <- asks currentUser user <- withStore $ \db -> getSetActiveUser db userId + setActive ActiveNone atomically . writeTVar u $ Just user pure $ CRActiveUser user SetActiveUser uName -> withUserName uName APISetActiveUser @@ -295,6 +297,7 @@ processChatCommand = \case -- prohibit to delete active user -- withStore' $ \db -> deleteUser db userId -- ? other cleanup + setActive ActiveNone pure $ CRCmdOk Nothing DeleteUser uName -> withUserName uName APIDeleteUser StartChat subConns enableExpireCIs -> withUser' $ \user ->