mirror of
https://github.com/GoldenCheetah/GoldenCheetah.git
synced 2026-04-15 05:32:21 +00:00
Added sanity checking to ignore missing metrics
There is a possibility that ride metrics may become unavailable yet remain requested by QSettings (stored in ~/Library/Preferences/org.goldencheetah.GoldenCheetah.plist on OS X). This patch ignores any metrics listed in the preferences yet are not supported by the running version of Golden Cheetah.
This commit is contained in:
committed by
Sean Rhea
parent
5cd621f800
commit
9147369c41
@@ -32,6 +32,7 @@ RideMetric::computeMetrics(const RideFile *ride, const Zones *zones,
|
||||
QHash<QString,RideMetric*> done;
|
||||
while (!todo.isEmpty()) {
|
||||
QString symbol = todo.takeFirst();
|
||||
if (!factory.haveMetric(symbol)) continue;
|
||||
const QVector<QString> &deps = factory.dependencies(symbol);
|
||||
bool ready = true;
|
||||
foreach (QString dep, deps) {
|
||||
|
||||
@@ -198,6 +198,7 @@ RideSummaryWindow::htmlSummary() const
|
||||
summary += "<td align=\"center\" valign=\"bottom\">Interval Name</td>";
|
||||
foreach (QString symbol, intervalMetrics) {
|
||||
RideMetricPtr m = metrics.value(symbol);
|
||||
if (!m) continue;
|
||||
summary += "<td align=\"center\" valign=\"bottom\">" + m->name();
|
||||
if (m->units(metricUnits) == "seconds")
|
||||
; // don't do anything
|
||||
@@ -219,6 +220,7 @@ RideSummaryWindow::htmlSummary() const
|
||||
summary += "<td align=\"center\">" + interval.name + "</td>";
|
||||
foreach (QString symbol, intervalMetrics) {
|
||||
RideMetricPtr m = metrics.value(symbol);
|
||||
if (!m) continue;
|
||||
QString s("<td align=\"center\">%1</td>");
|
||||
if (m->units(metricUnits) == "seconds")
|
||||
summary += s.arg(time_to_string(m->value(metricUnits)));
|
||||
|
||||
Reference in New Issue
Block a user