summaryrefslogtreecommitdiffstats
path: root/src/plugins/platforms/xcb/qxcbclipboard.cpp
diff options
context:
space:
mode:
authorLiang Qi <liang.qi@qt.io>2019-01-28 19:30:32 +0000
committerThe Qt Project <gerrit-noreply@qt-project.org>2019-01-28 19:30:32 +0000
commite3621dd6bd32a64e602ae87711c24d6aae2989b5 (patch)
treec4539c9aa6b1a4b9a4e88ef5caef4bd3e29c7b41 /src/plugins/platforms/xcb/qxcbclipboard.cpp
parent71cd5a6f3643a5369b883d0e36478693de6db024 (diff)
parent980567b3a32b2e2f00c86f2d627cd82b5230dd0f (diff)
Merge "Merge remote-tracking branch 'origin/5.12' into dev" into refs/staging/dev
Diffstat (limited to 'src/plugins/platforms/xcb/qxcbclipboard.cpp')
-rw-r--r--src/plugins/platforms/xcb/qxcbclipboard.cpp5
1 files changed, 3 insertions, 2 deletions
diff --git a/src/plugins/platforms/xcb/qxcbclipboard.cpp b/src/plugins/platforms/xcb/qxcbclipboard.cpp
index bc92f82d5f..ac8b029916 100644
--- a/src/plugins/platforms/xcb/qxcbclipboard.cpp
+++ b/src/plugins/platforms/xcb/qxcbclipboard.cpp
@@ -810,8 +810,9 @@ xcb_generic_event_t *QXcbClipboard::waitForClipboardEvent(xcb_window_t window, i
connection()->flush();
- // sleep 50 ms, so we don't use up CPU cycles all the time.
- QThread::msleep(50);
+ const auto elapsed = timer.elapsed();
+ if (elapsed < clipboard_timeout)
+ queue->waitForNewEvents(clipboard_timeout - elapsed);
} while (timer.elapsed() < clipboard_timeout);
return nullptr;