From 702fc5850cf9d1e5a5b5e22e29c03abf998075c3 Mon Sep 17 00:00:00 2001 From: Dean Lee Date: Wed, 20 Oct 2021 03:59:06 +0800 Subject: [PATCH] replay: fix replay looping (#22618) --- selfdrive/ui/replay/replay.cc | 9 ++++++--- 1 file changed, 6 insertions(+), 3 deletions(-) diff --git a/selfdrive/ui/replay/replay.cc b/selfdrive/ui/replay/replay.cc index 1ed37d1fa9..3e9f5ac059 100644 --- a/selfdrive/ui/replay/replay.cc +++ b/selfdrive/ui/replay/replay.cc @@ -324,9 +324,12 @@ void Replay::stream() { // wait for frame to be sent before unlock.(frameReader may be deleted after unlock) camera_server_->waitFinish(); - if (eit == events_->end() && (current_segment_ == segments_.rbegin()->first) && isSegmentLoaded(current_segment_)) { - qInfo() << "reaches the end of route, restart from beginning"; - emit seekTo(0, false); + if (eit == events_->end()) { + int last_segment = segments_.rbegin()->first; + if (current_segment_ >= last_segment && isSegmentLoaded(last_segment)) { + qInfo() << "reaches the end of route, restart from beginning"; + emit seekTo(0, false); + } } } }