From: Friedemann Kleint Date: Mon, 17 Aug 2015 11:18:28 +0000 (+0200) Subject: Fix potential crash in QWindowsWindow::setDropSiteEnabled(). X-Git-Tag: v5.5.90+alpha1~18^2^2~2 X-Git-Url: http://review.tizen.org/git/?a=commitdiff_plain;h=4c3fa449acfc7ec43f3b2c53318c2838ceba5a86;p=platform%2Fupstream%2Fqtbase.git Fix potential crash in QWindowsWindow::setDropSiteEnabled(). Release drop target after CoLockObjectExternal() to prevent a potential access violation. Change-Id: I2c3bde9f8008b1d567544596f56ebfd61fe6ad86 Task-number: QTBUG-47737 Reviewed-by: Joerg Bornemann --- diff --git a/src/plugins/platforms/windows/qwindowswindow.cpp b/src/plugins/platforms/windows/qwindowswindow.cpp index 853cf036a7..288f73cb8f 100644 --- a/src/plugins/platforms/windows/qwindowswindow.cpp +++ b/src/plugins/platforms/windows/qwindowswindow.cpp @@ -1034,8 +1034,8 @@ void QWindowsWindow::setDropSiteEnabled(bool dropEnabled) RegisterDragDrop(m_data.hwnd, m_dropTarget); CoLockObjectExternal(m_dropTarget, true, true); } else { - m_dropTarget->Release(); CoLockObjectExternal(m_dropTarget, false, true); + m_dropTarget->Release(); RevokeDragDrop(m_data.hwnd); m_dropTarget = 0; }