aboutsummaryrefslogtreecommitdiffstats
path: root/qt-ui/subsurfacewebservices.cpp
diff options
context:
space:
mode:
Diffstat (limited to 'qt-ui/subsurfacewebservices.cpp')
-rw-r--r--qt-ui/subsurfacewebservices.cpp8
1 files changed, 7 insertions, 1 deletions
diff --git a/qt-ui/subsurfacewebservices.cpp b/qt-ui/subsurfacewebservices.cpp
index 6aadc2de7..6050782b2 100644
--- a/qt-ui/subsurfacewebservices.cpp
+++ b/qt-ui/subsurfacewebservices.cpp
@@ -85,6 +85,7 @@ static bool merge_locations_into_dives(void)
*/
if ((dive->when + dive->duration.seconds - gpsfix->when) < (nextgpsfix->when - gpsfix->when)) {
copy_gps_location(gpsfix, dive);
+ changed++;
tracer = j;
break;
}
@@ -346,8 +347,11 @@ void SubsurfaceWebServices::buttonClicked(QAbstractButton *button)
/* now merge the data in the gps_location table into the dive_table */
if (merge_locations_into_dives()) {
mark_divelist_changed(true);
+#ifndef NO_MARBLE
+
MainWindow::instance()->globe()->repopulateLabels();
MainWindow::instance()->globe()->centerOnDiveSite(current_dive->dive_site_uuid);
+#endif
MainWindow::instance()->information()->updateDiveInfo();
}
@@ -378,8 +382,10 @@ void SubsurfaceWebServices::buttonClicked(QAbstractButton *button)
usedUuids.insert(d->dive_site_uuid);
}
for_each_dive_site(i, ds) {
- if (!usedUuids.contains(ds->uuid) && same_string(ds->notes, "SubsurfaceWebservice"))
+ if (!usedUuids.contains(ds->uuid) && same_string(ds->notes, "SubsurfaceWebservice")) {
delete_dive_site(ds->uuid);
+ i--; // otherwise we skip one site
+ }
}
} break;
case QDialogButtonBox::RejectRole: