From 30341cf339dc54a24dfdeeaab4226cc914f6ee84 Mon Sep 17 00:00:00 2001 From: Mark Liversedge Date: Sat, 19 Dec 2009 15:46:11 +0000 Subject: [PATCH] Stress Calculator loses pending changes The stress calculator works through every ride and updates stress.cache. After each file is processed its details are wiped with a freeMemory, this causes unsaved changes to be lost (isDirty is ignored). This patch adds a check to make sure the file is not dirty before the in-core values are deleted. --- src/StressCalculator.cpp | 3 ++- 1 file changed, 2 insertions(+), 1 deletion(-) diff --git a/src/StressCalculator.cpp b/src/StressCalculator.cpp index dcd72d94e..cd8a63cb7 100644 --- a/src/StressCalculator.cpp +++ b/src/StressCalculator.cpp @@ -158,7 +158,8 @@ void StressCalculator::calculateStress(QWidget *mw, cache[ridedatestring][bs_name] = bs; cache[ridedatestring][dp_name] = dp; - item->freeMemory(); + // only delete if the ride is clean (i.e. no pending ave) + if (item->isDirty() == false) item->freeMemory(); } addRideData(metric == bs_name ? bs : dp,item->dateTime);