From a84826090ab384952abe00a49cb71d2edb9d3af7 Mon Sep 17 00:00:00 2001 From: Anton Lundin Date: Thu, 19 Dec 2013 22:11:31 +0100 Subject: Planner: don't abort when saving a dive The fix for dereferencing a null pointer from me was a bad fix that broke the possibility of saving a planned dive as a dive. This is a better fix to not dereference a null pointer and be able to save the plan again. Signed-off-by: Anton Lundin Signed-off-by: Dirk Hohndel --- qt-ui/diveplanner.cpp | 7 ++++--- 1 file changed, 4 insertions(+), 3 deletions(-) diff --git a/qt-ui/diveplanner.cpp b/qt-ui/diveplanner.cpp index 6fb9ecef3..223d9d657 100644 --- a/qt-ui/diveplanner.cpp +++ b/qt-ui/diveplanner.cpp @@ -1422,8 +1422,6 @@ void DivePlannerPointsModel::createTemporaryPlan() lastIndex = i; plan_add_segment(&diveplan, deltaT, p.depth, p.o2, p.he, p.po2); } - if (!diveplan.dp) - return; char *cache = NULL; tempDive = NULL; const char *errorString = NULL; @@ -1432,7 +1430,10 @@ void DivePlannerPointsModel::createTemporaryPlan() cylinder_t *cyl = &stagingDive->cylinder[i]; if (cyl->depth.mm) { dp = create_dp(0, cyl->depth.mm, cyl->gasmix.o2.permille, cyl->gasmix.he.permille, 0); - dp->next = diveplan.dp->next; + if (diveplan.dp) + dp->next = diveplan.dp->next; + else + dp->next = NULL; diveplan.dp->next = dp; } } -- cgit v1.2.3-70-g09d2