subsurface/core
Linus Torvalds 5a66ac7698 Make sure DC_FIELD_TANK starts from a clean slate for each cylinder
We used to clear the 'dc_tank_t' for each dive, but then only clear the
volume field in between each cylinder.  That means that if the
libdivecomputer back-end does not touch a field, it might contain the
stale value from the previous tank information.

I'm not sure this is actually much of an issue, since I'd expect
back-ends do seem to initialize the fields fully (at least the EON Steel
back-end does).  But it's inconsistent.

Also, the code was actually buggy because of the odd indentation: it
would only ask for new tank information up to 'ntanks' tanks, but
because of the final fixup that was done outside of the conditional, it
would actually update the cylinder begin/end pressure data *beyond*
'ntanks', and just re-use the last libdivecomputer data for the rest of
the cylinders.

Again, in practice, that probably never really happened, but it is a
real bug.

The fixed-up code actually looks better too, imho, and is one line
shorter because of the initialization now being done in one place rather
than two.

Signed-off-by: Linus Torvalds <torvalds@linux-foundation.org>
Signed-off-by: Dirk Hohndel <dirk@hohndel.org>
2016-08-29 21:43:17 -07:00
..
subsurface-qt Settings update: Fix git_local_only loading 2016-08-28 20:01:41 -07:00
android.cpp Move subsurface-core to core and qt-mobile to mobile-widgets 2016-04-04 22:33:58 -07:00
checkcloudconnection.cpp Allow the user to give longer cloud timeout on the command line 2016-07-23 12:54:30 +09:00
checkcloudconnection.h Move subsurface-core to core and qt-mobile to mobile-widgets 2016-04-04 22:33:58 -07:00
cloudstorage.cpp Use preferences object to correctly store cloud status 2016-07-23 12:53:37 +09:00
cloudstorage.h Move subsurface-core to core and qt-mobile to mobile-widgets 2016-04-04 22:33:58 -07:00
CMakeLists.txt Adds Cylinder helper class for cylinder info access in grantlee templates 2016-08-10 15:00:33 -07:00
cochran.c Move subsurface-core to core and qt-mobile to mobile-widgets 2016-04-04 22:33:58 -07:00
cochran.h Move subsurface-core to core and qt-mobile to mobile-widgets 2016-04-04 22:33:58 -07:00
color.cpp Move subsurface-core to core and qt-mobile to mobile-widgets 2016-04-04 22:33:58 -07:00
color.h Move subsurface-core to core and qt-mobile to mobile-widgets 2016-04-04 22:33:58 -07:00
compressibility.r Move subsurface-core to core and qt-mobile to mobile-widgets 2016-04-04 22:33:58 -07:00
configuredivecomputer.cpp Move subsurface-core to core and qt-mobile to mobile-widgets 2016-04-04 22:33:58 -07:00
configuredivecomputer.h Move subsurface-core to core and qt-mobile to mobile-widgets 2016-04-04 22:33:58 -07:00
configuredivecomputerthreads.cpp Fix broken Bluetooth support 2016-04-18 06:01:01 -07:00
configuredivecomputerthreads.h Move subsurface-core to core and qt-mobile to mobile-widgets 2016-04-04 22:33:58 -07:00
datatrak.c Move subsurface-core to core and qt-mobile to mobile-widgets 2016-04-04 22:33:58 -07:00
datatrak.h Move subsurface-core to core and qt-mobile to mobile-widgets 2016-04-04 22:33:58 -07:00
deco.c Move subsurface-core to core and qt-mobile to mobile-widgets 2016-04-04 22:33:58 -07:00
deco.h Move subsurface-core to core and qt-mobile to mobile-widgets 2016-04-04 22:33:58 -07:00
device.c Hide compile time warning 2016-08-16 11:31:31 -07:00
device.h Fill in divecomputer serial number and firmware version on loading 2016-08-14 10:22:41 -07:00
devicedetails.cpp Move subsurface-core to core and qt-mobile to mobile-widgets 2016-04-04 22:33:58 -07:00
devicedetails.h Move subsurface-core to core and qt-mobile to mobile-widgets 2016-04-04 22:33:58 -07:00
display.h Only do 9 minute interval for min/max/avg 2016-04-20 15:55:51 -07:00
dive.c Settings update: Clean up save user id local 2016-08-27 10:55:40 -07:00
dive.h Add new helper for case insensitive string comparison 2016-07-24 09:53:24 +09:00
divecomputer.cpp Settings update: Remove unused include and add FIXME comment 2016-08-27 11:40:44 -07:00
divecomputer.h Move subsurface-core to core and qt-mobile to mobile-widgets 2016-04-04 22:33:58 -07:00
divelist.c Fix logic for presaturation 2016-06-11 10:28:04 -07:00
divelist.h Add helper to find the dive closest to a given time 2016-04-14 09:42:10 -07:00
divelogexportlogic.cpp Settings update: Remove uneeded includes 2016-08-27 11:40:45 -07:00
divelogexportlogic.h Move subsurface-core to core and qt-mobile to mobile-widgets 2016-04-04 22:33:58 -07:00
divesite.c Move subsurface-core to core and qt-mobile to mobile-widgets 2016-04-04 22:33:58 -07:00
divesite.cpp Move subsurface-core to core and qt-mobile to mobile-widgets 2016-04-04 22:33:58 -07:00
divesite.h Move subsurface-core to core and qt-mobile to mobile-widgets 2016-04-04 22:33:58 -07:00
divesitehelpers.cpp Move subsurface-core to core and qt-mobile to mobile-widgets 2016-04-04 22:33:58 -07:00
divesitehelpers.h Move subsurface-core to core and qt-mobile to mobile-widgets 2016-04-04 22:33:58 -07:00
equipment.c Add HP117 to the cylinder list 2016-08-10 15:08:51 -07:00
exif.cpp Move subsurface-core to core and qt-mobile to mobile-widgets 2016-04-04 22:33:58 -07:00
exif.h Move subsurface-core to core and qt-mobile to mobile-widgets 2016-04-04 22:33:58 -07:00
file.c Remove unused variable 2016-06-11 10:32:00 -07:00
file.h Move subsurface-core to core and qt-mobile to mobile-widgets 2016-04-04 22:33:58 -07:00
gas-model.c Move subsurface-core to core and qt-mobile to mobile-widgets 2016-04-04 22:33:58 -07:00
gaspressures.c Move subsurface-core to core and qt-mobile to mobile-widgets 2016-04-04 22:33:58 -07:00
gaspressures.h Move subsurface-core to core and qt-mobile to mobile-widgets 2016-04-04 22:33:58 -07:00
gettext.h Move subsurface-core to core and qt-mobile to mobile-widgets 2016-04-04 22:33:58 -07:00
gettextfromc.cpp Move subsurface-core to core and qt-mobile to mobile-widgets 2016-04-04 22:33:58 -07:00
gettextfromc.h Move subsurface-core to core and qt-mobile to mobile-widgets 2016-04-04 22:33:58 -07:00
git-access.c Fix cloud storage authentication attempt counting 2016-08-14 10:22:35 -07:00
git-access.h git storage: init local repository 2016-04-27 15:05:37 -07:00
gpslocation.cpp Unify handling of QDateTime time zone information 2016-08-10 15:04:39 -07:00
gpslocation.h GPS provider: change haveGPS status if GPS source returns error 2016-04-17 22:59:12 -07:00
helpers.h Settings update: Add "Dive Computer" settings to SettingsObjectWrapper 2016-08-27 11:40:44 -07:00
imagedownloader.cpp Only attempt to download each picture once 2016-04-30 16:18:44 -07:00
imagedownloader.h Move subsurface-core to core and qt-mobile to mobile-widgets 2016-04-04 22:33:58 -07:00
isocialnetworkintegration.cpp Move subsurface-core to core and qt-mobile to mobile-widgets 2016-04-04 22:33:58 -07:00
isocialnetworkintegration.h Move subsurface-core to core and qt-mobile to mobile-widgets 2016-04-04 22:33:58 -07:00
libdivecomputer.c Make sure DC_FIELD_TANK starts from a clean slate for each cylinder 2016-08-29 21:43:17 -07:00
libdivecomputer.h Fix broken Bluetooth support 2016-04-18 06:01:01 -07:00
linux.c Move subsurface-core to core and qt-mobile to mobile-widgets 2016-04-04 22:33:58 -07:00
liquivision.c Move subsurface-core to core and qt-mobile to mobile-widgets 2016-04-04 22:33:58 -07:00
load-git.c Settings update: Clean up save user id local 2016-08-27 10:55:40 -07:00
macos.c Move subsurface-core to core and qt-mobile to mobile-widgets 2016-04-04 22:33:58 -07:00
membuffer.c Move subsurface-core to core and qt-mobile to mobile-widgets 2016-04-04 22:33:58 -07:00
membuffer.h Move subsurface-core to core and qt-mobile to mobile-widgets 2016-04-04 22:33:58 -07:00
metrics.cpp Move subsurface-core to core and qt-mobile to mobile-widgets 2016-04-04 22:33:58 -07:00
metrics.h Move subsurface-core to core and qt-mobile to mobile-widgets 2016-04-04 22:33:58 -07:00
ostctools.c Move subsurface-core to core and qt-mobile to mobile-widgets 2016-04-04 22:33:58 -07:00
parse-xml.c Settings update: Clean up save user id local 2016-08-27 10:55:40 -07:00
planner.c Replace the "stop" symbol in deco plan 2016-08-10 15:07:04 -07:00
planner.h Have divedatapoint store cylinder id instead of gasmix 2016-07-09 12:07:25 -07:00
pluginmanager.cpp Move subsurface-core to core and qt-mobile to mobile-widgets 2016-04-04 22:33:58 -07:00
pluginmanager.h Move subsurface-core to core and qt-mobile to mobile-widgets 2016-04-04 22:33:58 -07:00
pref.h Settings update: Fix broken UpdateManger logic 2016-08-27 12:29:08 -07:00
prefs-macros.h Move subsurface-core to core and qt-mobile to mobile-widgets 2016-04-04 22:33:58 -07:00
profile.c Show SAC rate when using the ruler 2016-07-18 16:27:38 +09:00
profile.h Don't calculate the 9 minute average 2016-04-20 16:00:28 -07:00
qt-gui.h Move subsurface-core to core and qt-mobile to mobile-widgets 2016-04-04 22:33:58 -07:00
qt-init.cpp Settings update: Move loadPreferences out of qt-helper.cpp 2016-08-27 11:40:45 -07:00
qthelper.cpp Settings update: Fix missing groups and Language initialization 2016-08-27 22:37:15 -07:00
qthelper.h Settings update: Move loadPreferences out of qt-helper.cpp 2016-08-27 11:40:45 -07:00
qthelperfromc.h Move subsurface-core to core and qt-mobile to mobile-widgets 2016-04-04 22:33:58 -07:00
qtserialbluetooth.cpp Move subsurface-core to core and qt-mobile to mobile-widgets 2016-04-04 22:33:58 -07:00
save-git.c Add proper line ending for unit line in git save format 2016-07-21 20:00:04 +09:00
save-html.c Extend time parsing to before 1970 2016-04-29 09:07:17 -07:00
save-html.h Move subsurface-core to core and qt-mobile to mobile-widgets 2016-04-04 22:33:58 -07:00
save-xml.c Extend time parsing to before 1970 2016-04-29 09:07:17 -07:00
serial_ftdi.c Move subsurface-core to core and qt-mobile to mobile-widgets 2016-04-04 22:33:58 -07:00
sha1.c Move subsurface-core to core and qt-mobile to mobile-widgets 2016-04-04 22:33:58 -07:00
sha1.h Move subsurface-core to core and qt-mobile to mobile-widgets 2016-04-04 22:33:58 -07:00
statistics.c Extend time parsing to before 1970 2016-04-29 09:07:17 -07:00
statistics.h Move subsurface-core to core and qt-mobile to mobile-widgets 2016-04-04 22:33:58 -07:00
strndup.h Move subsurface-core to core and qt-mobile to mobile-widgets 2016-04-04 22:33:58 -07:00
strtod.c Move subsurface-core to core and qt-mobile to mobile-widgets 2016-04-04 22:33:58 -07:00
subsurfacestartup.c Allow the user to give longer cloud timeout on the command line 2016-07-23 12:54:30 +09:00
subsurfacestartup.h Allow switching the user from the command line 2016-04-29 12:14:59 -07:00
subsurfacesysinfo.cpp Move subsurface-core to core and qt-mobile to mobile-widgets 2016-04-04 22:33:58 -07:00
subsurfacesysinfo.h Move subsurface-core to core and qt-mobile to mobile-widgets 2016-04-04 22:33:58 -07:00
taxonomy.c Move subsurface-core to core and qt-mobile to mobile-widgets 2016-04-04 22:33:58 -07:00
taxonomy.h Move subsurface-core to core and qt-mobile to mobile-widgets 2016-04-04 22:33:58 -07:00
time.c Extend time parsing to before 1970 2016-04-29 09:07:17 -07:00
uemis-downloader.c Extend time parsing to before 1970 2016-04-29 09:07:17 -07:00
uemis.c Move subsurface-core to core and qt-mobile to mobile-widgets 2016-04-04 22:33:58 -07:00
uemis.h Move subsurface-core to core and qt-mobile to mobile-widgets 2016-04-04 22:33:58 -07:00
units.h Move subsurface-core to core and qt-mobile to mobile-widgets 2016-04-04 22:33:58 -07:00
version.c Move subsurface-core to core and qt-mobile to mobile-widgets 2016-04-04 22:33:58 -07:00
version.h Move subsurface-core to core and qt-mobile to mobile-widgets 2016-04-04 22:33:58 -07:00
webservice.h Move subsurface-core to core and qt-mobile to mobile-widgets 2016-04-04 22:33:58 -07:00
windows.c Move subsurface-core to core and qt-mobile to mobile-widgets 2016-04-04 22:33:58 -07:00
windowtitleupdate.cpp Move subsurface-core to core and qt-mobile to mobile-widgets 2016-04-04 22:33:58 -07:00
windowtitleupdate.h Move subsurface-core to core and qt-mobile to mobile-widgets 2016-04-04 22:33:58 -07:00
worldmap-options.h Move subsurface-core to core and qt-mobile to mobile-widgets 2016-04-04 22:33:58 -07:00
worldmap-save.c Move subsurface-core to core and qt-mobile to mobile-widgets 2016-04-04 22:33:58 -07:00
worldmap-save.h Move subsurface-core to core and qt-mobile to mobile-widgets 2016-04-04 22:33:58 -07:00