Rob Shearman : winhlp32: Restore the original window proc for the richedit control before freeing the winhelp window memory .

Alexandre Julliard julliard at winehq.org
Mon Nov 9 15:14:15 CST 2009


Module: wine
Branch: master
Commit: dd4804c413a54a9c26eb4320c7178604b6a55a8e
URL:    http://source.winehq.org/git/wine.git/?a=commit;h=dd4804c413a54a9c26eb4320c7178604b6a55a8e

Author: Rob Shearman <robertshearman at gmail.com>
Date:   Sun Nov  8 14:07:50 2009 +0100

winhlp32: Restore the original window proc for the richedit control before freeing the winhelp window memory.

---

 programs/winhlp32/winhelp.c |    5 +++++
 1 files changed, 5 insertions(+), 0 deletions(-)

diff --git a/programs/winhlp32/winhelp.c b/programs/winhlp32/winhelp.c
index ae7d58d..fb05aeb 100644
--- a/programs/winhlp32/winhelp.c
+++ b/programs/winhlp32/winhelp.c
@@ -541,6 +541,7 @@ static void WINHELP_DeleteWindow(WINHELP_WINDOW* win)
 {
     WINHELP_WINDOW**    w;
     BOOL bExit;
+    HWND hTextWnd;
 
     for (w = &Globals.win_list; *w; w = &(*w)->next)
     {
@@ -562,6 +563,10 @@ static void WINHELP_DeleteWindow(WINHELP_WINDOW* win)
     if (win == Globals.active_popup)
         Globals.active_popup = NULL;
 
+    hTextWnd = GetDlgItem(win->hMainWnd, CTL_ID_TEXT);
+    SetWindowLongPtr(hTextWnd, GWLP_WNDPROC,
+                     (LONG_PTR)win->origRicheditWndProc);
+
     WINHELP_DeleteButtons(win);
 
     if (win->page) WINHELP_DeletePageLinks(win->page);




More information about the wine-cvs mailing list