From 4fd02ff007af9fe3a042a105a7eb9f7e38c62131 Mon Sep 17 00:00:00 2001 From: DonLakeFlyer Date: Mon, 22 May 2017 13:42:54 -0700 Subject: [PATCH] Fixes for NaNs in param 5/6/7 --- src/JsonHelper.cc | 11 +++-------- 1 file changed, 3 insertions(+), 8 deletions(-) diff --git a/src/JsonHelper.cc b/src/JsonHelper.cc index 8d44bcb09..f7dcc7608 100644 --- a/src/JsonHelper.cc +++ b/src/JsonHelper.cc @@ -63,20 +63,15 @@ bool JsonHelper::loadGeoCoordinate(const QJsonValue& jsonValue, } foreach(const QJsonValue& jsonValue, coordinateArray) { - if (jsonValue.type() != QJsonValue::Double) { + if (jsonValue.type() != QJsonValue::Double && jsonValue.type() != QJsonValue::Null) { errorString = QObject::tr("Coordinate array may only contain double values, found: %1").arg(jsonValue.type()); return false; } } - coordinate = QGeoCoordinate(coordinateArray[0].toDouble(), coordinateArray[1].toDouble()); + coordinate = QGeoCoordinate(possibleNaNJsonValue(coordinateArray[0]), possibleNaNJsonValue(coordinateArray[1])); if (altitudeRequired) { - coordinate.setAltitude(coordinateArray[2].toDouble()); - } - - if (!coordinate.isValid()) { - errorString = QObject::tr("Coordinate is invalid: %1").arg(coordinate.toString()); - return false; + coordinate.setAltitude(possibleNaNJsonValue(coordinateArray[2])); } return true; -- 2.22.0