# HG changeset patch # User unc0rr # Date 1313253882 -14400 # Node ID 38e3d934791024df1b4b0baec1b5e6464f6ea755 # Parent b27ed6c6f53843a5f75312bc5dbc17a669e01c29 Don't switch to gsConfirm state (which is pretty same as gsGame) when not in gsGame or gsChat state. Prevents crashes and other possible kinds of wierd behaviour. diff -r b27ed6c6f538 -r 38e3d9347910 hedgewars/uCommandHandlers.pas --- a/hedgewars/uCommandHandlers.pas Fri Aug 12 15:33:07 2011 -0400 +++ b/hedgewars/uCommandHandlers.pas Sat Aug 13 20:44:42 2011 +0400 @@ -43,16 +43,17 @@ const prevGState: TGameState = gsConfirm; begin s:= s; // avoid compiler hint - if GameState <> gsConfirm then - begin + if (GameState = gsGame) or (GameState = gsChat) then + begin prevGState:= GameState; GameState:= gsConfirm; SDL_ShowCursor(1) - end else - begin - GameState:= prevGState; - SDL_ShowCursor(ord(isPaused)) - end + end else + if GameState = gsConfirm then + begin + GameState:= prevGState; + SDL_ShowCursor(ord(isPaused)) + end end; procedure chForceQuit(var s: shortstring);