Age | Commit message (Collapse) | Author |
|
It seems silly to not show what git told us went wrong.
Signed-off-by: Dirk Hohndel <dirk@hohndel.org>
|
|
If the server tells us that the PIN is invalid, we need to continue
to ask for a PIN.
Signed-off-by: Dirk Hohndel <dirk@hohndel.org>
|
|
Inexplicably, commit 8b7427c56d ("Move CloudStorage out of the widgets")
didn't just move the code but added a local member 'verbose' that hides
our global variable...
Signed-off-by: Dirk Hohndel <dirk@hohndel.org>
|
|
This will need to be merged / cleaned up once the git storage fixes have
been merged.
Signed-off-by: Dirk Hohndel <dirk@hohndel.org>
|
|
This became rather obvious with the change to immediately show errors.
The commit also fixes a small memory leak.
Signed-off-by: Dirk Hohndel <dirk@hohndel.org>
|
|
Signed-off-by: Dirk Hohndel <dirk@hohndel.org>
|
|
This doesn't really seem to belong in save_git.c.
Signed-off-by: Dirk Hohndel <dirk@hohndel.org>
|
|
None of these seem to point to actual issues, so let's quiet them.
Signed-off-by: Dirk Hohndel <dirk@hohndel.org>
|
|
The pressure information of cylinder should be kept intact when
copy-pasting other cylinder related information from other dive.
According to Dirk, the gas mix is wanted to be changed as technical
divers might have always the same multiple cylinders and wish to copy
the gasmix information over.
Fixes #689
Signed-off-by: Miika Turkia <miika.turkia@gmail.com>
|
|
Signed-off-by: Dirk Hohndel <dirk@hohndel.org>
|
|
This line:
dc = &dive->dc
can SIGSEGV for a NULL 'dive' pointer.
return NULL if 'dive' is NULL.
Also handle NULL 'dc' in get_gasmix() and set 'ev' to NULL.
Signed-off-by: Lubomir I. Ivanov <neolit123@gmail.com>
|
|
current_dc is a macro that determines the dive computer
based on the current dive number. When the planner is started
from an emtpy dive list, the dive number ends up being -1 and
that doesn't produce a valid dive computer. Use the divecomputer
of the displayed_dive instead. This is done via a macro that
can also be used in two other places. Without this patch, the
planner crashed when called on an empty dive list.
Signed-off-by: Robert C. Helling <helling@atdotde.de>
|
|
Identify previous dives for CNS calculation in a similar way as it
is done for previous dives for deco calculation.
This is done to identify the previous dives dynamically when moving
around date/time of a dive in the planner.
Signed-off-by: Stefan Fuchs <sfuchs@gmx.de>
|
|
When changing the date/time of a dive in the planner the dive may end
up in a totaly new position in respect to date/time of other dives in
dive list table. It can be moved to the past or the future before or after
other existing dives. It also could overlap with an existing dive.
This change enables identification of a new "virtual" dive list position
and based on this starts looking for previous dives.
Then it (as before the change) does init the deco calculation with any
applicable previous dive and surface interval.
If some of these applicable dives overlap it returns a neg. surface time
which is then used in the planner notes to prohibit display of results.
Signed-off-by: Stefan Fuchs <sfuchs@gmx.de>
|
|
Signed-off-by: Stefan Fuchs <sfuchs@gmx.de>
|
|
and adapt the strings for translation to s.th. which can be handled more
easily.
Signed-off-by: Stefan Fuchs <sfuchs@gmx.de>
|
|
Signed-off-by: Stefan Fuchs <sfuchs@gmx.de>
|
|
For the geo references tags update the following:
- Nicer look w/o "Tags:" text and brackets when inside location UI
- Translation for "Tags:"
- Warning message when no dive site layout categories are set
Signed-off-by: Stefan Fuchs <sfuchs@gmx.de>
|
|
Trivial typo only visible on Android build.
Signed-off-by: Jan Mulder <jlmulder@xs4all.nl>
|
|
Tidy up the code which creates the first sample for time = 0 to make
clear that the info for this does NOT come from the first planner point (dp).
No functional change.
Signed-off-by: Stefan Fuchs <sfuchs@gmx.de>
|
|
This fixes some debug code to dump the diveplan which is usually
not compiled and used.
Signed-off-by: Stefan Fuchs <sfuchs@gmx.de>
|
|
In the planner when a dive is created from the diveplan every first
sample with a new gas shouldn't have a pressure value added.
Otherwise the interpolation code for the pressure graph in the profile
will draw the pressure graph incorrectly.
Signed-off-by: Stefan Fuchs <sfuchs@gmx.de>
|
|
Up to now the cylinder for gas breaks was hardcoded to first cylinder.
With this change the best_first_ascend_cylinder is used if its
O2 is <=32%.
Signed-off-by: Stefan Fuchs <sfuchs@gmx.de>
|
|
When calculating the dive plan in the planner don't accidently use
another gas with same gasmix instead of the gas stored as
"best_first_ascend_gas".
This is important if you have e.g. a bottom stage and back gas with
same gas mix because then you always want to start your ascent with
the gas you used in last entered dive planner point.
Signed-off-by: Stefan Fuchs <sfuchs@gmx.de>
|
|
instead of dc_cylinder_renumber() because it is the one which is really
useful elsewhere.
Signed-off-by: Stefan Fuchs <sfuchs@gmx.de>
|
|
In the planner if one adds two or more cylinders with the same gasmix
(e.g. back gas and bottom stage 18/45) the drop down and data in the
used gas column of the planner points table will be filled with a more
verbose string mentioning also the cyl number and the cyl type
description.
Makes it easier in such a case to select the right cylinder.
Introduces also a helper function which tells you if there is another
cylinder with the same gasmix as the provided cylinder.
This also has an option if it should consider unused cylinders or not.
Signed-off-by: Stefan Fuchs <sfuchs@gmx.de>
|
|
Language selection should now work again with string "lang=xx".
Signed-off-by: Stefan Fuchs <sfuchs@gmx.de>
|
|
With an OTA adapter - sadly I can't test that. This driver opens a
specific USB device and will ignore the connection settings. It would be
better to get some visual feedback for that (in the QML UI), but I'll
leave that until this has been verified to work.
Signed-off-by: Dirk Hohndel <dirk@hohndel.org>
|
|
We can't use the localBtDevice on iOS, so hack around that and go straight to
discovery.
Signed-off-by: Dirk Hohndel <dirk@hohndel.org>
|
|
This commit implements possible switching BT on and off during a session,
so not needing a restart of the app when the user forgot to switch
it on when starting the app.
For this, the following needed to be done: 1) create a handler that
reacts on local BT device status changes. 2) repopulate the connection
list in the download screen when a BT status change is detected.
Notice the subtile change of the Q_INVOKABLE btEnabled() function
to a Q_PROPERTY. This gives a nice dynamic behaviour when
switching BT on/off with the app open.
Fixes: #556
Signed-off-by: Jan Mulder <jlmulder@xs4all.nl>
|
|
Simple rewrite of a piece of code separated to its own function
so that is can be used in other places as well. To avoid code
duplication for dynamic BT on/off switching on mobile.
Signed-off-by: Jan Mulder <jlmulder@xs4all.nl>
|
|
Preparation primarily for mobile. When we want to switch in
one session from BT to cable connection and vise versa, we
need a way to clear the model data containing the possible
connections in use.
Signed-off-by: Jan Mulder <jlmulder@xs4all.nl>
|
|
In certain places the '(int)' cast is used, while in other the
llrint() or lrint() functions. Make the conversation from degrees
in the 'double' form to the 'int' degrees_t consistent using lrint().
lrint() is the function which should give the best results,
because it accepts a 'double' and results in a 'long'
even if degrees_t is 'int'. If the truncation from 'long' to 'int'
is discarding some of the precision then the next step
would be to turn degrees_t into a 64bit signed integer type.
Possible fix for #625.
Signed-off-by: Lubomir I. Ivanov <neolit123@gmail.com>
|
|
Add a preferences option which enables or disables display of units in the
main dive liste table.
Signed-off-by: Stefan Fuchs <sfuchs@gmx.de>
|
|
Calculating parameters when in the planner mode is necessary to display the correct ceiling.
Fixes #601
Signed-off-by: Rick Walsh <rickmwalsh@gmail.com>
|
|
Exporting to divelogs.de triggered this bug when divesite name is empty.
Fixes #656
Signed-off-by: Miika Turkia <miika.turkia@gmail.com>
|
|
Fixed-by: Linus Torvalds <torvalds@linux-foundation.org>
Signed-off-by: Miika Turkia <miika.turkia@gmail.com>
|
|
The code incorrectly divided the temperature by 10 as an integer,
causing unnecessary precision loss due to truncation.
Fix it, and update the test results for the now improved temperature
import.
Signed-off-by: Linus Torvalds <torvalds@linux-foundation.org>
Signed-off-by: Dirk Hohndel <dirk@hohndel.org>
|
|
The divinglog import did horrible things with the strings returned from
the sqlite queries, and ended up using uninitialized values at the end
of the secondary profile data strings.
This rewrites the import logic to track the length of the strings
properly when importing the divinglog data.
We should run 'valgrind' a whole lot more than we do, I suspect.
Signed-off-by: Linus Torvalds <torvalds@linux-foundation.org>
Signed-off-by: Dirk Hohndel <dirk@hohndel.org>
|
|
Signed-off-by: Dirk Hohndel <dirk@hohndel.org>
|
|
Signed-off-by: Dirk Hohndel <dirk@hohndel.org>
|
|
I have received one sample log where after parsing a bunch of dives
properly, the sample count hits zero, and after that it is astronomical.
In case of zero, the only data we have is dive date and time of a
duplicate dive that we already parsed with proper dive profile. So
preventing a crash with this hack without properly understanding the
weird file format.
Signed-off-by: Miika Turkia <miika.turkia@gmail.com>
|
|
The random coincidence that this code actually ended up working
in my tests is weird.
Signed-off-by: Dirk Hohndel <dirk@hohndel.org>
|
|
Taxonomy crash fix
|
|
We need to make sure that the taxonomy information has been allocated
before assigning values to it...
Signed-off-by: Dirk Hohndel <dirk@hohndel.org>
|
|
Makes it clearer that these are buffers and not integers
like `ds->uuid`.
Signed-off-by: Lubomir I. Ivanov <neolit123@gmail.com>
|
|
Reported-by: Benjamin Fogel <nystire@gmail.com>
Signed-off-by: Lubomir I. Ivanov <neolit123@gmail.com>
|
|
When planning a new dive (not replan!!!) based on an existing (planned)
dive, the cylinders from the existing selected dive are copied.
This patch guarantees that cylinders which had been marked as "unused"
are indeed copied as well. Sounds strange at the first moment but makes
sense because if one marks a cylinder explicitly as "unused" in the
planner instead of deleting it that does mean that one wants to keep
this cylinder to have it available and be able to reenable it later-on.
Signed-off-by: Stefan Fuchs <sfuchs@gmx.de>
|
|
Signed-off-by: Dirk Hohndel <dirk@hohndel.org>
|
|
This is just the indentation change for the code that was inside the
loop before.
Signed-off-by: Dirk Hohndel <dirk@hohndel.org>
|