summaryrefslogtreecommitdiffstats
path: root/qt-ui
diff options
context:
space:
mode:
authorGravatar Dirk Hohndel <dirk@hohndel.org>2015-02-10 06:31:37 -0800
committerGravatar Dirk Hohndel <dirk@hohndel.org>2015-02-10 15:04:29 -0800
commitd449ac3208a0e923aa5500295d2f4ab842dc84cc (patch)
tree9913fa043e48a93fee86f05b21f0c16bdea27e6c /qt-ui
parent47dd0a1ec5230c30bdb809b0c61521ac8bd22fca (diff)
downloadsubsurface-d449ac3208a0e923aa5500295d2f4ab842dc84cc.tar.gz
Only update tags in the selected dives if they were changed
If current_dive and displayed_dive still have the same tags then we shouldn't touch the tags of other selected dives. Fixes #826 Signed-off-by: Dirk Hohndel <dirk@hohndel.org>
Diffstat (limited to 'qt-ui')
-rw-r--r--qt-ui/maintab.cpp3
1 files changed, 3 insertions, 0 deletions
diff --git a/qt-ui/maintab.cpp b/qt-ui/maintab.cpp
index 00aae5f29..88cfd8849 100644
--- a/qt-ui/maintab.cpp
+++ b/qt-ui/maintab.cpp
@@ -1099,6 +1099,9 @@ void MainTab::saveTags()
Q_FOREACH (const QString& tag, ui.tagWidget->getBlockStringList())
taglist_add_tag(&displayed_dive.tag_list, tag.toUtf8().data());
taglist_cleanup(&displayed_dive.tag_list);
+ // we need to check if the tags were changed before just overwriting them
+ if (taglist_equal(displayed_dive.tag_list, cd->tag_list))
+ return;
MODIFY_SELECTED_DIVES(
QString tag;
taglist_free(mydive->tag_list);