diff options
author | Lubomir I. Ivanov <neolit123@gmail.com> | 2014-11-12 22:24:36 +0200 |
---|---|---|
committer | Dirk Hohndel <dirk@hohndel.org> | 2014-11-12 14:41:39 -0800 |
commit | 1617d437d413705977905673ddcde0d8ff0ba068 (patch) | |
tree | b2e5ad661d03ed57b9707bda668ac44707e3185b /translations/subsurface_pt_BR.ts | |
parent | e024a5b207bdcc12492ea32a181da31f7597c6e9 (diff) | |
download | subsurface-1617d437d413705977905673ddcde0d8ff0ba068.tar.gz |
profile.c: fix a bug in calculate_gas_information_new()
In a test case loading dives/test35.xml results in a infinite(-like)
loop (Note: possibly requires the partial pressure plots enabled).
calculate_gas_information_new() has an 'if' branch to
update the cylinderindex to a dive's diluent_cylinder_index,
but it does not consider that said index can be set previously
to -1.
This results in a random neighbour memory assigned as
&dive->cylinder[-1].gasmix and passed to fill_pressures(..).
Following the calculations in the function the He gas,
can receive a bad value (e.g. for the test case in the
E+6 ranges).
Said value is then used in DivePlotDataModel()::pheMax()
(defined by MAX_PPGAS_FUNC()) resulting in one of the loops
(the 3rd one) in DiveCartesianAxis::updateTicks() to
loop indefinitely.
Fixes #759
Signed-off-by: Lubomir I. Ivanov <neolit123@gmail.com>
Signed-off-by: Dirk Hohndel <dirk@hohndel.org>
Diffstat (limited to 'translations/subsurface_pt_BR.ts')
0 files changed, 0 insertions, 0 deletions