diff -r 8d1e9a9dda8e -r e0570f2e5f41 gameServer/Actions.hs --- a/gameServer/Actions.hs Thu Aug 29 10:06:19 2013 +0400 +++ b/gameServer/Actions.hs Thu Aug 29 12:01:19 2013 +0400 @@ -666,8 +666,10 @@ filterM (client'sM rnc isReadyChecker) allci when (not $ null readyCheckersIds) $ do - modify (\s -> s{clientIndex = Just $ head readyCheckersIds}) - processAction CheckRecord + oldci <- gets clientIndex + withStateT (\s -> s{clientIndex = Just $ head readyCheckersIds}) + $ processAction CheckRecord + modify (\s -> s{clientIndex = oldci}) where isReadyChecker cl = isChecker cl && isReady cl