From 82bf40e1f00a23430fd9ae9bc085d809369dc3a1 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Niklas=20S=C3=B6derlund?= Date: Thu, 26 Sep 2019 20:39:51 +0200 Subject: qcam: Stop timer on timeout MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit Stopping the timer will reset the Timer::deadline_ field to 0 fixing potential bugs and call QtEventDispatcher::unregisterTimer() which will take care of the cleanup. Signed-off-by: Niklas Söderlund Reviewed-by: Laurent Pinchart --- src/qcam/qt_event_dispatcher.cpp | 6 ++---- 1 file changed, 2 insertions(+), 4 deletions(-) (limited to 'src/qcam/qt_event_dispatcher.cpp') diff --git a/src/qcam/qt_event_dispatcher.cpp b/src/qcam/qt_event_dispatcher.cpp index 98d2472c..e39c6edb 100644 --- a/src/qcam/qt_event_dispatcher.cpp +++ b/src/qcam/qt_event_dispatcher.cpp @@ -130,10 +130,8 @@ void QtEventDispatcher::unregisterTimer(Timer *timer) void QtEventDispatcher::timerEvent(QTimerEvent *event) { - auto it = timers_.find(event->timerId()); - timerIds_.erase(it->second); - killTimer(it->first); - timers_.erase(it); + Timer *timer = timers_[event->timerId()]; + timer->stop(); } void QtEventDispatcher::processEvents() -- cgit v1.2.1