mirror of
https://github.com/subsurface/subsurface.git
synced 2025-01-31 19:53:24 +00:00
libdivecomputer does crazy gas mixes too
Did I just say "In comparison, the libdivecomputer output is nice and sane"? It turns out that libdivecomputer has been doing some drugs too when it comes to gas mixes. Like showing O2 percentages as 255.0% and N2 percentages as -155.0%. Clearly libdivecomputer uses a 'unsigned char' for oxygen percentage, and makes "-1" be "undefined". And then it prints that non-existing mix out, and in the process does MATH on the damn thing ("100-O2") to "calculate" the nitrogen percentage. Christ. Just make the parser silently ignore the craziness, because printing out "Strange percentage reading -155.0" a few hundred times just doesn't make anything any better. Signed-off-by: Linus Torvalds <torvalds@linux-foundation.org>
This commit is contained in:
parent
9741913124
commit
adc7280c02
1 changed files with 3 additions and 0 deletions
|
@ -326,6 +326,9 @@ static void percent(char *buffer, void *_fraction)
|
||||||
|
|
||||||
static void gasmix(char *buffer, void *_fraction)
|
static void gasmix(char *buffer, void *_fraction)
|
||||||
{
|
{
|
||||||
|
/* libdivecomputer does negative percentages. */
|
||||||
|
if (*buffer == '-')
|
||||||
|
return;
|
||||||
if (gasmix_index < MAX_MIXES)
|
if (gasmix_index < MAX_MIXES)
|
||||||
percent(buffer, _fraction);
|
percent(buffer, _fraction);
|
||||||
}
|
}
|
||||||
|
|
Loading…
Add table
Reference in a new issue