diff --git a/selfdrive/ui/qt/onroad.cc b/selfdrive/ui/qt/onroad.cc index 5a3d278ab3..bc50025c05 100644 --- a/selfdrive/ui/qt/onroad.cc +++ b/selfdrive/ui/qt/onroad.cc @@ -375,7 +375,7 @@ void NvgWindow::paintGL() { UIState *s = uiState(); const cereal::ModelDataV2::Reader &model = (*s->sm)["modelV2"].getModelV2(); CameraViewWidget::draw_frame_id = model.getFrameId(); - qDebug() << "NvgWindow::paintGL: frame to draw:" << draw_frame_id; + qDebug() << "NvgWindow::paintGL: frame to draw:" << model.getFrameId(); CameraViewWidget::paintGL(); QPainter painter(this); diff --git a/selfdrive/ui/qt/widgets/cameraview.cc b/selfdrive/ui/qt/widgets/cameraview.cc index 6052a4a97c..9b8e97cb11 100644 --- a/selfdrive/ui/qt/widgets/cameraview.cc +++ b/selfdrive/ui/qt/widgets/cameraview.cc @@ -222,12 +222,13 @@ void CameraViewWidget::paintGL() { VisionBuf *latest_frame; std::deque::iterator it = std::find(frame_ids.begin(), frame_ids.end(), draw_frame_id); - if (it != frame_ids.end() && frame_ids[frame_ids.size() - 1] < FRAME_BUFFER_LEN) { - latest_frame = frames[it - frame_ids.begin()]; - qDebug() << "Drawing frame:" << frame_ids[it - frame_ids.begin()]; - } else { + if (it == frame_ids.end() || frame_ids[frame_ids.size() - 1] < FRAME_BUFFER_LEN) { latest_frame = frames[frames.size() - 1]; - qDebug() << "Drawing frame:" << frame_ids[frames.size() - 1]; + qDebug() << "Drawing latest frame:" << frame_ids[frames.size() - 1]; + } else { + int frame_id = it - frame_ids.begin(); + latest_frame = frames[frame_id]; + qDebug() << "Drawing frame:" << frame_ids[frame_id]; } qDebug() << "CameraViewWidget::paintGL: frame to draw:" << draw_frame_id;