summaryrefslogtreecommitdiff
path: root/main/State.hs
diff options
context:
space:
mode:
authorRoman Smrž <roman.smrz@seznam.cz>2025-03-29 21:08:14 +0100
committerRoman Smrž <roman.smrz@seznam.cz>2025-03-31 20:35:33 +0200
commit7a8e3fa16970296de6e553631fab7cfd67f461c2 (patch)
tree20de3e97ddfb80ee9542f6d7898caa6f694fa5eb /main/State.hs
parent92fac6d75f0600f628ef459105385c0cf3f21e40 (diff)
Keep weak reference to previous local state
Diffstat (limited to 'main/State.hs')
-rw-r--r--main/State.hs5
1 files changed, 3 insertions, 2 deletions
diff --git a/main/State.hs b/main/State.hs
index 76441df..d357844 100644
--- a/main/State.hs
+++ b/main/State.hs
@@ -44,14 +44,15 @@ loadLocalStateHead term st = loadHeads st >>= \case
, ssValue = [ storedRef $ idExtData $ fromMaybe identity owner ]
}
storeHead st $ LocalState
- { lsIdentity = idExtData identity
+ { lsPrev = Nothing
+ , lsIdentity = idExtData identity
, lsShared = [ shared ]
, lsOther = []
}
updateSharedIdentity :: (MonadHead LocalState m, MonadError e m, FromErebosError e) => Terminal -> m ()
-updateSharedIdentity term = updateLocalHead_ $ updateSharedState_ $ \case
+updateSharedIdentity term = updateLocalState_ $ updateSharedState_ $ \case
Just identity -> do
Just . toComposedIdentity <$> interactiveIdentityUpdate term identity
Nothing -> throwOtherError "no existing shared identity"