- qDebug() << "using fake gps (" << fakeLocation->label() << ")";
- q->stopGps();
- q->setUseFakeLocation( true );
- q->setCurrentLocation( fakeLocation );
- emit locationChanged( q->currentLocation() );
+ qDebug() << "using fake gps (" << fakeLocationLabel << ")";
+
+ q->setFakeLocationLabel( fakeLocationLabel );
+ Location *fakeLocation = q->fakeLocation();
+
+ if ( fakeLocation == 0 ) {
+ qDebug() << "invalid fake location label; cannot use fake location";
+ } else {
+ q->stopGps();
+ q->setUseFakeLocation( true );
+ emit locationChanged( fakeLocation );
+ }