From 399618adb5c04b7f65f31b59927a3a87133aad5e Mon Sep 17 00:00:00 2001 From: Volker Birk Date: Thu, 30 Aug 2018 02:34:30 +0200 Subject: [PATCH] switch to new_sync_timeout_event() --- src/user_interface.cc | 10 +++++++++- 1 file changed, 9 insertions(+), 1 deletion(-) diff --git a/src/user_interface.cc b/src/user_interface.cc index 037dd5d..47bfa86 100644 --- a/src/user_interface.cc +++ b/src/user_interface.cc @@ -52,16 +52,24 @@ namespace pEp { SYNC_EVENT UserInterface::retrieve_next_sync_event(void *management, time_t threshold) { time_t started = time(nullptr); + bool timeout = false; + while (adapter.queue().empty()) { int i = 0; ++i; if (i > 10) { - if (time(nullptr) > started + threshold) + if (time(nullptr) > started + threshold) { + timeout = true; break; + } i = 0; } nanosleep((const struct timespec[]){{0, 100000000L}}, NULL); } + + if (timeout) + return new_sync_timeout_event(); + return adapter.queue().pop_front(); }