To: vim-dev@vim.org Subject: Patch 5.6.039 Fcc: outbox From: Bram Moolenaar ------------ Patch 5.6.039 Problem: Motif GUI under KDE: When trying to logout, Vim hangs up the system. (Hermann Rochholz) Solution: When handling the WM_SAVE_YOURSELF event, set the WM_COMMAND property of the window to let the session manager know we finished saving ourselves. Files: src/gui_x11.c *** ../vim-5.6.38/src/gui_x11.c Sun Jan 16 16:26:41 2000 --- src/gui_x11.c Wed Mar 29 12:33:55 2000 *************** *** 2353,2359 **** return; /* ! * SAVE_YOURSELF can arrive at any moment (not only when crashing!). * Just sync our swap files. */ if (((XClientMessageEvent *)event)->data.l[0] == --- 2353,2360 ---- return; /* ! * The WM_SAVE_YOURSELF event arrives when the window manager wants to ! * exit. That can be cancelled though, thus Vim shouldn't exit here. * Just sync our swap files. */ if (((XClientMessageEvent *)event)->data.l[0] == *************** *** 2361,2366 **** --- 2362,2372 ---- { out_flush(); ml_sync_all(FALSE, FALSE); /* preserve all swap files */ + + /* Set the window's WM_COMMAND property, to let the window manager + * know we are done saving ourselves. We don't want to be restarted, + * thus set argv to NULL. */ + XSetCommand(gui.dpy, XtWindow(vimShell), NULL, 0); return; } *** ../vim-5.6.38/src/version.c Tue Mar 28 17:54:16 2000 --- src/version.c Wed Mar 29 12:35:09 2000 *************** *** 420,421 **** --- 420,423 ---- { /* Add new patch number below this line */ + /**/ + 39, /**/ -- With sufficient thrust, pigs fly just fine. -- RFC 1925 /-/-- Bram Moolenaar --- Bram@moolenaar.net --- http://www.moolenaar.net --\-\ \-\-- Vim: http://www.vim.org ---- ICCF Holland: http://www.vim.org/iccf --/-/