replay: fix replay looping (#22618)

old-commit-hash: 702fc5850cf9d1e5a5b5e22e29c03abf998075c3
This commit is contained in:
Dean Lee
2021-10-20 03:59:06 +08:00
committed by GitHub
parent 872ec535f4
commit 3542dfeacd

View File

@@ -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);
}
}
}
}