From 5d9fcd39d5a1a5730271967995e7da86a8dbdabf Mon Sep 17 00:00:00 2001 From: hobbs Date: Tue, 4 Jan 2005 01:28:51 +0000 Subject: * win/tkWinWm.c (TkWinWmCleanup): clean up layered window class This caused crash in reinit of Tk (as seen in plugin). --- ChangeLog | 5 +++++ win/tkWinWm.c | 11 ++++++++++- 2 files changed, 15 insertions(+), 1 deletion(-) diff --git a/ChangeLog b/ChangeLog index 8b0c959..0a3dfc3 100644 --- a/ChangeLog +++ b/ChangeLog @@ -1,3 +1,8 @@ +2005-01-03 Jeff Hobbs + + * win/tkWinWm.c (TkWinWmCleanup): clean up layered window class. + This caused crash in reinit of Tk (as seen in plugin). + 2004-12-29 Jeff Hobbs * win/tcl.m4, win/configure: update MSVC CFLAGS_OPT to -O2, remove diff --git a/win/tkWinWm.c b/win/tkWinWm.c index 60a0eee..8fd60a9 100644 --- a/win/tkWinWm.c +++ b/win/tkWinWm.c @@ -12,7 +12,7 @@ * See the file "license.terms" for information on usage and redistribution * of this file, and for a DISCLAIMER OF ALL WARRANTIES. * - * RCS: @(#) $Id: tkWinWm.c,v 1.54.2.16 2004/10/29 22:34:06 mdejong Exp $ + * RCS: @(#) $Id: tkWinWm.c,v 1.54.2.17 2005/01/04 01:28:51 hobbs Exp $ */ #include "tkWinInt.h" @@ -1838,6 +1838,15 @@ TkWinWmCleanup(hInstance) tsdPtr->initialized = 0; UnregisterClass(TK_WIN_TOPLEVEL_CLASS_NAME, hInstance); +#ifndef TCL_THREADS + /* + * Clean up specialized class created for layered windows. + */ + if (setLayeredWindowAttributesProc != NULL) { + UnregisterClass(TK_WIN_TOPLEVEL_NOCDC_CLASS_NAME, hInstance); + setLayeredWindowAttributesProc = NULL; + } +#endif } /* -- cgit v0.12