<feed xmlns='http://www.w3.org/2005/Atom'>
<title>subsurface.git/core, branch v5.0.1</title>
<subtitle>forked from https://github.com/subsurface/subsurface</subtitle>
<id>https://git.tsegers.com/subsurface.git/atom?h=v5.0.1</id>
<link rel='self' href='https://git.tsegers.com/subsurface.git/atom?h=v5.0.1'/>
<link rel='alternate' type='text/html' href='https://git.tsegers.com/subsurface.git/'/>
<updated>2021-03-31T11:54:23Z</updated>
<entry>
<title>core: initialize dive selection after resetting the data</title>
<updated>2021-03-31T11:54:23Z</updated>
<author>
<name>Berthold Stoeger</name>
<email>bstoeger@mail.tuwien.ac.at</email>
</author>
<published>2021-03-31T11:54:23Z</published>
<link rel='alternate' type='text/html' href='https://git.tsegers.com/subsurface.git/commit/?id=a988e3c135f8ad356b91edaede706770f5a3ab74'/>
<id>urn:sha1:a988e3c135f8ad356b91edaede706770f5a3ab74</id>
<content type='text'>
The dive selection was initialized during data-reset. However,
this emitted a signal before all data-reset routines were run.
Ultimately, this led to access-after-free in the statistics code.

Instead, move the select_newest_visible_dive() signal from the
divelist-model to the process_loaded_dives() function. There
is no point in initializing the selection if the dive data
is cleared after all.

This change broke closing of the log, because the UI-selection
was not reset. Therefore, when clearing the data, clear the
selection before proceeding with clearing.

Signed-off-by: Berthold Stoeger &lt;bstoeger@mail.tuwien.ac.at&gt;
</content>
</entry>
<entry>
<title>planner: fix deco calculation</title>
<updated>2021-03-24T17:30:22Z</updated>
<author>
<name>Berthold Stoeger</name>
<email>bstoeger@mail.tuwien.ac.at</email>
</author>
<published>2021-02-26T11:42:27Z</published>
<link rel='alternate' type='text/html' href='https://git.tsegers.com/subsurface.git/commit/?id=d0494beb5f1509fc73cf7d0a110740676164d7b9'/>
<id>urn:sha1:d0494beb5f1509fc73cf7d0a110740676164d7b9</id>
<content type='text'>
In 9bfc6d252, testing of the planner was changed to use the
planner_ds parameter instead of a global variable.

Unfortunately, two conditionals were inverted, leading to
an erroneous ceiling calculation when in the planner.

Restore the proper conditions. Moreover, instead of testing
the planner_ds parameter, use the already existing in_planner
flag, which is derived from said parameter.

Signed-off-by: Berthold Stoeger &lt;bstoeger@mail.tuwien.ac.at&gt;
</content>
</entry>
<entry>
<title>Use PSCR gas when computing O2 toxicity</title>
<updated>2021-03-12T21:24:23Z</updated>
<author>
<name>Robert C. Helling</name>
<email>helling@atdotde.de</email>
</author>
<published>2021-03-11T22:27:13Z</published>
<link rel='alternate' type='text/html' href='https://git.tsegers.com/subsurface.git/commit/?id=7c62f7541cce617d2c2651c0a93353ce03fee115'/>
<id>urn:sha1:7c62f7541cce617d2c2651c0a93353ce03fee115</id>
<content type='text'>
Both the calculations for CNS and OTU did not take
into account the pO2 drop when using a PSCR. Furthermore,
there was some unit confusion due to not using internal
units.

Reported-by: arosl
Signed-off-by: Robert C. Helling &lt;helling@atdotde.de&gt;
</content>
</entry>
<entry>
<title>Use QtBluetooth enums from their namespace</title>
<updated>2021-03-12T16:41:31Z</updated>
<author>
<name>Andreas Buhr</name>
<email>andreas.buhr@qt.io</email>
</author>
<published>2021-03-12T12:20:38Z</published>
<link rel='alternate' type='text/html' href='https://git.tsegers.com/subsurface.git/commit/?id=41fc822d56e7d0866129ef6b68ccfb947300bffd'/>
<id>urn:sha1:41fc822d56e7d0866129ef6b68ccfb947300bffd</id>
<content type='text'>
For increased type safety, some enums have been changed to
scoped enums in Qt 6.2, see
https://codereview.qt-project.org/c/qt/qtconnectivity/+/337069
https://codereview.qt-project.org/c/qt/qtconnectivity/+/336678
This patch adapts subsurface to this change.
Since C++11, enums inject their symbols in both their own
and their parent namespace, so this patch can be merged right
now.

Signed-off-by: Andreas Buhr &lt;andreas.buhr@qt.io&gt;
</content>
</entry>
<entry>
<title>parser: initialize picture variable</title>
<updated>2021-03-09T00:29:04Z</updated>
<author>
<name>Berthold Stoeger</name>
<email>bstoeger@mail.tuwien.ac.at</email>
</author>
<published>2021-03-05T21:00:31Z</published>
<link rel='alternate' type='text/html' href='https://git.tsegers.com/subsurface.git/commit/?id=5ba6db80cc67c2e74f572acf1e455551c024b1f8'/>
<id>urn:sha1:5ba6db80cc67c2e74f572acf1e455551c024b1f8</id>
<content type='text'>
When parsing "event 123" (?) a picture is added, without
initializing the picture structure. Thus, a picture with a
random gps location is added.

Use the "empty_picture" initializer to avoid that. Fixes a
Coverity warning.

Signed-off-by: Berthold Stoeger &lt;bstoeger@mail.tuwien.ac.at&gt;
</content>
</entry>
<entry>
<title>Max ceiling precision</title>
<updated>2021-03-01T20:33:25Z</updated>
<author>
<name>Robert C. Helling</name>
<email>helling@atdotde.de</email>
</author>
<published>2021-03-01T09:02:02Z</published>
<link rel='alternate' type='text/html' href='https://git.tsegers.com/subsurface.git/commit/?id=345959177f67807963de1c56534c89df149bdf2a'/>
<id>urn:sha1:345959177f67807963de1c56534c89df149bdf2a</id>
<content type='text'>
We used to round the ceilings for the individual tissues with
%.1f but the maximal (and thus effective) ceiling only with
%.0f. This makes no sense or be rounded up (to the conservative
side).

This commit shows also the maximal ceiling with higher accuracy.

Reported-by: Peter Hübner
Signed-off-by: Robert C. Helling &lt;helling@atdotde.de&gt;
</content>
</entry>
<entry>
<title>Get O2 right in bailout mode</title>
<updated>2021-02-26T16:42:30Z</updated>
<author>
<name>Robert C. Helling</name>
<email>helling@atdotde.de</email>
</author>
<published>2021-02-23T21:05:00Z</published>
<link rel='alternate' type='text/html' href='https://git.tsegers.com/subsurface.git/commit/?id=fdcfcb1b329a7388fbbd0fa801d61fddb0f961d4'/>
<id>urn:sha1:fdcfcb1b329a7388fbbd0fa801d61fddb0f961d4</id>
<content type='text'>
When doing OC bailout from a CCR dive, there could still
be pO2 sensor readings but those are not valid.

This fixes a problem noticed by Justin Ashworth.

Signed-off-by: Robert C. Helling &lt;helling@atdotde.de&gt;
</content>
</entry>
<entry>
<title>Fix pO2 for CCR at shallow depths</title>
<updated>2021-02-26T16:42:30Z</updated>
<author>
<name>Robert C. Helling</name>
<email>helling@atdotde.de</email>
</author>
<published>2021-02-23T10:36:00Z</published>
<link rel='alternate' type='text/html' href='https://git.tsegers.com/subsurface.git/commit/?id=2064ce06cc02b6fc390fdf9bbe05fb60babc0d4b'/>
<id>urn:sha1:2064ce06cc02b6fc390fdf9bbe05fb60babc0d4b</id>
<content type='text'>
Even when diving a CCR, the pO2 cannot exceed ambient
pressure. This only makes a difference at shallow depths.

Fix this in the calculation of OTUs and CNS.

This affects some tests that now have slightly different CNS and OTU values.

Suggested-by: Justin Ashworth
Signed-off-by: Robert C. Helling &lt;helling@atdotde.de&gt;
</content>
</entry>
<entry>
<title>Planner: Depth dependent setpoint changes in CCR mode</title>
<updated>2021-02-26T16:42:30Z</updated>
<author>
<name>Robert C. Helling</name>
<email>helling@atdotde.de</email>
</author>
<published>2021-02-21T16:43:26Z</published>
<link rel='alternate' type='text/html' href='https://git.tsegers.com/subsurface.git/commit/?id=6b8a07f0d93b09021490b6c4c7595e3cb0ea17c2'/>
<id>urn:sha1:6b8a07f0d93b09021490b6c4c7595e3cb0ea17c2</id>
<content type='text'>
We had a user request to allow for setpoint changes
at certain depths for CCR deco.

You can now enter a cylinder with name like
"SP 1.4" ('S' and 'P' and ' ' and a float) with
a switch depth and that cylinder is interpreted as
a depth dependent setpoint switch.

This user interface is a hack. But I believe that such
setpoint changes are similar enough to gas switches during
deco and should thus be handled in a simiar manner.

I would be happy to hear ideas how this could be made
less easter eggish.

Suggested-by: Justin Ashworth
Signed-off-by: Robert C. Helling &lt;helling@atdotde.de&gt;
</content>
</entry>
<entry>
<title>desktop: fold ApplicationState into MainWindow</title>
<updated>2021-02-17T15:26:55Z</updated>
<author>
<name>Berthold Stoeger</name>
<email>bstoeger@mail.tuwien.ac.at</email>
</author>
<published>2021-02-14T19:59:02Z</published>
<link rel='alternate' type='text/html' href='https://git.tsegers.com/subsurface.git/commit/?id=5b3cb5898fead63750ea860417d1853710832d34'/>
<id>urn:sha1:5b3cb5898fead63750ea860417d1853710832d34</id>
<content type='text'>
The application state is a desktop-only thing. The mobile UI
also has its application state, but that is something completely
different.

The last remaining user of the application state was to flag
whether the planner is active. Since this has all been
unglobalized, the ApplicationState structure can be moved
from core to the desktop UI. And there it can be made local
to the MainWindow class.

Signed-off-by: Berthold Stoeger &lt;bstoeger@mail.tuwien.ac.at&gt;
</content>
</entry>
</feed>
