summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
-rw-r--r--src/plugins/platforms/windows/qwindowsclipboard.cpp11
-rw-r--r--tests/auto/gui/kernel/qclipboard/test/test.pro1
2 files changed, 7 insertions, 5 deletions
diff --git a/src/plugins/platforms/windows/qwindowsclipboard.cpp b/src/plugins/platforms/windows/qwindowsclipboard.cpp
index c1167ccf3a..4f083e93d2 100644
--- a/src/plugins/platforms/windows/qwindowsclipboard.cpp
+++ b/src/plugins/platforms/windows/qwindowsclipboard.cpp
@@ -283,14 +283,17 @@ bool QWindowsClipboard::clipboardViewerWndProc(HWND hwnd, UINT message, WPARAM w
}
}
return true;
- case WM_DRAWCLIPBOARD:
+ case WM_DRAWCLIPBOARD: {
+ const bool owned = ownsClipboard();
if (QWindowsContext::verboseOLE)
- qDebug("Clipboard changed");
- emitChanged(QClipboard::Clipboard);
+ qDebug("Clipboard changed owned %d", owned);
+ if (!owned) // changed is emitted by QClipboard in that case.
+ emitChanged(QClipboard::Clipboard);
// clean up the clipboard object if we no longer own the clipboard
- if (!ownsClipboard() && m_data)
+ if (!owned && m_data)
releaseIData();
propagateClipboardMessage(message, wParam, lParam);
+ }
return true;
case WM_DESTROY:
// Recommended shutdown
diff --git a/tests/auto/gui/kernel/qclipboard/test/test.pro b/tests/auto/gui/kernel/qclipboard/test/test.pro
index ffab4dec4f..4be6769592 100644
--- a/tests/auto/gui/kernel/qclipboard/test/test.pro
+++ b/tests/auto/gui/kernel/qclipboard/test/test.pro
@@ -16,7 +16,6 @@ wince* {
}
mac: CONFIG += insignificant_test # QTBUG-23057
-win32:CONFIG += insignificant_test # QTBUG-24184
load(testcase) # for target.path and installTestHelperApp()
installTestHelperApp("../copier/copier",copier,copier)