[prev in list] [next in list] [prev in thread] [next in thread] 

List:       kde-commits
Subject:    [marble] src/plugins/runner/gpx/handlers: correctly create required
From:       Niko Sams <niko.sams () gmail ! com>
Date:       2011-12-31 15:16:59
Message-ID: 20111231151659.8A530580DD () git ! kde ! org
[Download RAW message or body]

Git commit b7dbe298c0daa25c1736e9362a5a62b1453846a0 by Niko Sams.
Committed on 31/12/2011 at 14:34.
Pushed by nsams into branch 'master'.

correctly create required SimpleArrayData object if not yet existing

previously this was done on demand inside ExtendedData

this makes all gpx TestTrack tests parse

M  +5    -0    src/plugins/runner/gpx/handlers/GPXhrTagHandler.cpp

http://commits.kde.org/marble/b7dbe298c0daa25c1736e9362a5a62b1453846a0

diff --git a/src/plugins/runner/gpx/handlers/GPXhrTagHandler.cpp \
b/src/plugins/runner/gpx/handlers/GPXhrTagHandler.cpp index da45f4d..c20ca2e 100644
--- a/src/plugins/runner/gpx/handlers/GPXhrTagHandler.cpp
+++ b/src/plugins/runner/gpx/handlers/GPXhrTagHandler.cpp
@@ -34,6 +34,11 @@ GeoNode* GPXhrTagHandler::parse(GeoParser& parser) const
     {
         GeoDataSimpleArrayData* arrayData = parentItem.nodeAs<GeoDataTrack>()
                         ->extendedData().simpleArrayData( "heartrate" );
+        if (!arrayData) {
+            arrayData = new GeoDataSimpleArrayData();
+            QString name = parser.attribute( "name" ).trimmed();
+            parentItem.nodeAs<GeoDataTrack>()->extendedData().setSimpleArrayData( \
"heartrate", arrayData ); +        }
         QVariant value( parser.readElementText().toInt() );
         arrayData->append( value );
 #ifdef DEBUG_TAGS


[prev in list] [next in list] [prev in thread] [next in thread] 

Configure | About | News | Add a list | Sponsored by KoreLogic