diff options
Diffstat (limited to 'src/Erebos')
| -rw-r--r-- | src/Erebos/Storage/Key.hs | 7 | 
1 files changed, 4 insertions, 3 deletions
| diff --git a/src/Erebos/Storage/Key.hs b/src/Erebos/Storage/Key.hs index b6afc20..5da79e3 100644 --- a/src/Erebos/Storage/Key.hs +++ b/src/Erebos/Storage/Key.hs @@ -80,6 +80,7 @@ moveKeys from to = liftIO $ do                  return M.empty          (StorageMemory { memKeys = fromKeys }, StorageMemory { memKeys = toKeys }) -> do -            modifyMVar_ fromKeys $ \fkeys -> do -                modifyMVar_ toKeys $ return . M.union fkeys -                return M.empty +            when (fromKeys /= toKeys) $ do +                modifyMVar_ fromKeys $ \fkeys -> do +                    modifyMVar_ toKeys $ return . M.union fkeys +                    return M.empty |