On Wednesday, August 26, 2015 at 5:33:47 PM UTC-4, [email protected] wrote: > Hi, > > Based on the following posts: > > http://blogs.msdn.com/b/oldnewthing/archive/2011/09/26/10216420.aspx > http://blogs.msdn.com/b/oldnewthing/archive/2005/07/27/443824.aspx > > sending a WM_CLOSE and WM_NCDESTROY message to a window is not > the same as calling DestroyWindow(). So I think the original fix (patch 829) > for the crash is not correct. > > - Yegappan > > On Wed, Aug 26, 2015 at 2:12 PM, Bram Moolenaar <[email protected]> wrote: > > > > Patch 7.4.840 (after 7.4.829) > > Problem: Tooltip window stays open. > > Solution: Send a WM_CLOSE message. (Jurgen Kramer) > > Files: src/gui_w32.c > > > > > > *** ../vim-7.4.839/src/gui_w32.c 2015-08-25 12:21:23.583957205 +0200 > > --- src/gui_w32.c 2015-08-26 23:10:03.847838259 +0200 > > *************** > > *** 4836,4841 **** > > --- 4836,4842 ---- > > delete_tooltip(beval) > > BalloonEval *beval; > > { > > + PostMessage(beval->balloon, WM_CLOSE, 0, 0); > > PostMessage(beval->balloon, WM_DESTROY, 0, 0); > > PostMessage(beval->balloon, WM_NCDESTROY, 0, 0); > > } > > *** ../vim-7.4.839/src/version.c 2015-08-26 23:01:16.453676957 +0200 > > --- src/version.c 2015-08-26 23:11:28.262906177 +0200 > > *************** > > *** 743,744 **** > > --- 743,746 ---- > > { /* Add new patch number below this line */ > > + /**/ > > + 840, > > /**/ > > > > --
You might be right. If WM_CLOSE does eventually does internally call DestroyWindow() then the WM_DESTROY and WM_NCDESTROY might not be necessary. I wonder if there is a way to verify that this is the case? The main issue is that the code is crashing inside Microsoft's Common Controls DLL and I don't think the source code for this is accessible. -- -- You received this message from the "vim_dev" maillist. Do not top-post! Type your reply below the text you are replying to. For more information, visit http://www.vim.org/maillist.php --- You received this message because you are subscribed to the Google Groups "vim_dev" group. To unsubscribe from this group and stop receiving emails from it, send an email to [email protected]. For more options, visit https://groups.google.com/d/optout.
