From 4f1aa9a9cacee7dffea752607b5ad6c254f3e28b Mon Sep 17 00:00:00 2001 From: simon Date: Wed, 2 Mar 2011 18:52:03 +0000 Subject: [PATCH] Set the 'must_close_session' flag at the end of close_session(), so that we won't keep calling close_session() again the next time we go round the message loop. Should fix unclean-close-hang. Thanks to Simon Coleman for debugging. git-svn-id: svn://svn.tartarus.org/sgt/putty@9115 cda61777-01e9-0310-a592-d414129be87e --- windows/window.c | 9 +++++++++ 1 file changed, 9 insertions(+) diff --git a/windows/window.c b/windows/window.c index f721ed97..c8c2b56d 100644 --- a/windows/window.c +++ b/windows/window.c @@ -311,6 +311,15 @@ static void close_session(void) InsertMenu(popup_menus[i].menu, IDM_DUPSESS, MF_BYCOMMAND | MF_ENABLED, IDM_RESTART, "&Restart Session"); } + + /* + * Unset the 'must_close_session' flag, or else we'll come + * straight back here the next time we go round the main message + * loop - which, worse still, will be immediately (without + * blocking) because we've just triggered a WM_SETTEXT by the + * window title change above. + */ + must_close_session = FALSE; } int WINAPI WinMain(HINSTANCE inst, HINSTANCE prev, LPSTR cmdline, int show) -- 2.11.0