Not sure why, but setting the text on a treewidget item seems to
cost a lot of memory. So we don't bother since it is never used.
In general the valgrind output is ok, quite surprised. There are
very few non-widget items that are alloced but never free'd in the
GC code.
Train view - race* - out of date and no used
Train view - SimpleNetwork - not used
Analysis view - WeeklySummaryWindow - not used
MainWindow - RideCalendar - deprecated 2 years ago
Removed deprecated / unused code, includes;
- racedispatcher.cpp
- simplenetworkcontroller.cpp
- simplenetworkclient.cpp
Will look at the network stuff in OpenTrainer.
.. wow, nasty memory leak fixed. Leaked memory every
time a ride was selected or calendar was refreshed!
.. tbf it was marked with a 'XXX' memory leak comment
but really lazy to leave it there.
.. was also highlighted by valgrind, which is promising,
since I've been using it to hunt down any memory managment
issues -- most of them are within 3rd party libraries tho.
Noticed when looking for memory/stack overflow issues that
the importRide function allocates an aggregator on the heap
for the lifetime of the method. No biggie, but better to use
stack for that.
Because the image representation was stored in the pixmap
which was allocated on the stack -- it should be allocated on
heap since the underlying data is never actually copied.
This seems to fix the issue, but need to keep monitoring it!
Fixes#477.
Removing and fixing 'XXX' code markers across the ANT+
code. Largely this was to confirm against specs and mark
for future support (e.g. burst data, further refactoring
of the quarqd sources).
.. the code assumes the kickr connection will always work, even
when no BTLE hardware is present.
If no BTLE hardware is available then connections fail immediately
and so do attempts to find devices.
If BTLE hardware is available but the kickr connection cannot be
established in 30 seconds in train view then it returns an error.
Also added better device descriptions to check the device subtype
so we can identify stages, inride and kickr separately.
When switching between a ride with datapoints and one
without, then back again. Editor data was being deleted
for previous ride edited when selecting a ride with no
data!
All are harmless but for the sake of clarity have
fixed them all bar a couple;
- Lucene grumbles about signed/unsigned conversion which
is/isn't valid depending upon the version of CLucene you
compile with. Either way it is harmless.
- QxtScheduleView has a bunch of issues, but since it is a
third party widget its better to leave it unchanged.