summaryrefslogtreecommitdiffstats
path: root/info.c
diff options
context:
space:
mode:
authorGravatar Linus Torvalds <torvalds@linux-foundation.org>2013-02-03 20:40:45 +1100
committerGravatar Dirk Hohndel <dirk@hohndel.org>2013-02-03 21:28:02 +1100
commitec0535d4dfe42d7e41c8a19d7fc196b0259bf49e (patch)
tree342434884dacb669a810db3c9f0edc566ab7d219 /info.c
parent5cc6e210646f82a353cdd25bf9e9e464e113220d (diff)
downloadsubsurface-ec0535d4dfe42d7e41c8a19d7fc196b0259bf49e.tar.gz
Fix air temperature for multi-dive editing
The air temperature editing was broken when you edited multiple dives at once: even if you didn't actually change the air temperature, all dives would be reset to that particular temperature. The logic for editing dives is that we have a 'master' dive (which is the dive that all the entries get filled in from), and only if the entries have changed from what the master dive information was (ie the user actually edited it) do we change that particular piece of information. And we only change it for dives that match the master dive for that entry. Signed-off-by: Linus Torvalds <torvalds@linux-foundation.org> Signed-off-by: Dirk Hohndel <dirk@hohndel.org>
Diffstat (limited to 'info.c')
-rw-r--r--info.c2
1 files changed, 1 insertions, 1 deletions
diff --git a/info.c b/info.c
index b4c37a91f..c212316fe 100644
--- a/info.c
+++ b/info.c
@@ -579,7 +579,7 @@ static void save_dive_info_changes(struct dive *dive, struct dive *master, struc
default:
mkelvin = 0;
}
- if (mkelvin != dive->dc.airtemp.mkelvin) {
+ if (mkelvin != dive->dc.airtemp.mkelvin && dive->dc.airtemp.mkelvin == master->dc.airtemp.mkelvin) {
dive->dc.airtemp.mkelvin = mkelvin;
changed = 1;
}