From ddbcaf59ec83bccb9a2cbb3024ae3d80a2222f28 Mon Sep 17 00:00:00 2001 From: Ulf Hermann <ulf.hermann@theqtcompany.com> Date: Mon, 13 Apr 2015 16:37:09 +0200 Subject: [PATCH] Timeline: Check various members of TimelineOverviewRenderer for sanity In some transitional states we could end up without a zoomControl or a model. Make sure we won't access it then. Change-Id: I20b2363aae5fd860e97b393a65be20da26cec437 Reviewed-by: Joerg Bornemann <joerg.bornemann@theqtcompany.com> --- src/libs/timeline/timelineoverviewrenderer.cpp | 5 +++++ 1 file changed, 5 insertions(+) diff --git a/src/libs/timeline/timelineoverviewrenderer.cpp b/src/libs/timeline/timelineoverviewrenderer.cpp index 765e346ef6f..ab3a09cd5d9 100644 --- a/src/libs/timeline/timelineoverviewrenderer.cpp +++ b/src/libs/timeline/timelineoverviewrenderer.cpp @@ -54,6 +54,11 @@ QSGNode *TimelineOverviewRenderer::updatePaintNode(QSGNode *oldNode, Q_D(TimelineOverviewRenderer); Q_UNUSED(updatePaintNodeData) + if (!d->model || d->model->isEmpty() || !d->zoomer || d->zoomer->traceDuration() <= 0) { + delete oldNode; + return 0; + } + if (d->modelDirty) { delete d->renderState; d->renderState = 0; -- GitLab