From: Václav Slavík Date: Sun, 20 Jan 2002 11:27:38 +0000 (+0000) Subject: added tracing of ReleaseMouse and assertion to prevent releasing window with mouse... X-Git-Url: https://git.saurik.com/wxWidgets.git/commitdiff_plain/349d19426cbefdff882fe5969e225ef01584b6f5?hp=697c5f51487087e8113176d83a0d44e5a1c2f042 added tracing of ReleaseMouse and assertion to prevent releasing window with mouse capture git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@13672 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775 --- diff --git a/src/common/wincmn.cpp b/src/common/wincmn.cpp index 2b63369661..c6a369eb14 100644 --- a/src/common/wincmn.cpp +++ b/src/common/wincmn.cpp @@ -214,6 +214,8 @@ bool wxWindowBase::CreateBase(wxWindowBase *parent, // common clean up wxWindowBase::~wxWindowBase() { + wxASSERT_MSG( GetCapture() != this, wxT("attempt to destroy window with mouse capture") ); + // FIXME if these 2 cases result from programming errors in the user code // we should probably assert here instead of silently fixing them @@ -1625,7 +1627,7 @@ struct WXDLLEXPORT wxWindowNext void wxWindowBase::CaptureMouse() { wxLogTrace(_T("mousecapture"), _T("CaptureMouse(0x%08x)"), this); - + wxWindow *winOld = GetCapture(); if ( winOld ) { @@ -1642,6 +1644,8 @@ void wxWindowBase::CaptureMouse() void wxWindowBase::ReleaseMouse() { + wxLogTrace(_T("mousecapture"), _T("ReleaseMouse(0x%08x)"), this); + DoReleaseMouse(); if ( ms_winCaptureNext )