summaryrefslogtreecommitdiffstats
path: root/ui/base/x/selection_requestor.cc
diff options
context:
space:
mode:
Diffstat (limited to 'ui/base/x/selection_requestor.cc')
-rw-r--r--ui/base/x/selection_requestor.cc7
1 files changed, 7 insertions, 0 deletions
diff --git a/ui/base/x/selection_requestor.cc b/ui/base/x/selection_requestor.cc
index f044cf8..158028d 100644
--- a/ui/base/x/selection_requestor.cc
+++ b/ui/base/x/selection_requestor.cc
@@ -55,6 +55,13 @@ bool SelectionRequestor::PerformBlockingConvertSelection(
base::MessageLoop::ScopedNestableTaskAllower allow_nested(loop);
base::RunLoop run_loop;
+ // Stop waiting for a response after a certain amount of time.
+ const int kMaxWaitTimeForClipboardResponse = 300;
+ loop->PostDelayedTask(
+ FROM_HERE,
+ run_loop.QuitClosure(),
+ base::TimeDelta::FromMilliseconds(kMaxWaitTimeForClipboardResponse));
+
PendingRequest pending_request(target, run_loop.QuitClosure());
pending_requests_.push_back(&pending_request);
run_loop.Run();