Module: wine Branch: master Commit: 3f91e7529a37e50a48f21c0c3cb75c47bf3da36a URL: http://source.winehq.org/git/wine.git/?a=commit;h=3f91e7529a37e50a48f21c0c3c...
Author: Clinton Stimpson cjstimpson@utwire.net Date: Sat Dec 2 18:12:07 2006 -0700
comctl32: Destroy header information on WM_NCDESTROY instead of WM_DESTROY.
---
dlls/comctl32/header.c | 16 ++++++++++++---- 1 files changed, 12 insertions(+), 4 deletions(-)
diff --git a/dlls/comctl32/header.c b/dlls/comctl32/header.c index 5b62dda..73b1095 100644 --- a/dlls/comctl32/header.c +++ b/dlls/comctl32/header.c @@ -1502,10 +1502,17 @@ HEADER_Create (HWND hwnd, WPARAM wParam, static LRESULT HEADER_Destroy (HWND hwnd, WPARAM wParam, LPARAM lParam) { + HTHEME theme = GetWindowTheme(hwnd); + CloseThemeData(theme); + return 0; +} + +static LRESULT +HEADER_NCDestroy (HWND hwnd, WPARAM wParam, LPARAM lParam) +{ HEADER_INFO *infoPtr = HEADER_GetInfoPtr (hwnd); HEADER_ITEM *lpItem; INT nItem; - HTHEME theme;
if (infoPtr->items) { lpItem = infoPtr->items; @@ -1519,13 +1526,11 @@ HEADER_Destroy (HWND hwnd, WPARAM wParam Free(infoPtr->order);
if (infoPtr->himl) - ImageList_Destroy (infoPtr->himl); + ImageList_Destroy (infoPtr->himl);
SetWindowLongPtrW (hwnd, 0, 0); Free (infoPtr);
- theme = GetWindowTheme(hwnd); - CloseThemeData(theme); return 0; }
@@ -2078,6 +2083,9 @@ HEADER_WindowProc (HWND hwnd, UINT msg, case WM_DESTROY: return HEADER_Destroy (hwnd, wParam, lParam);
+ case WM_NCDESTROY: + return HEADER_NCDestroy (hwnd, wParam, lParam); + case WM_ERASEBKGND: return 1;