Cleanup: provide printGPSCoords in C and C++ versions

printGPSCoords() returned a newly allocated C-style string. Most
callers simply made a QString out of it and freed the C-style string.
This is paradoxical, as printGPSCoords internally works with QStrings
and converts them to C-style on return.

Therefore, let printGPSCoords() return a QString and create a
printGPSCoordsC() wrapper for the two C-callers.

Signed-off-by: Berthold Stoeger <bstoeger@mail.tuwien.ac.at>
This commit is contained in:
Berthold Stoeger 2019-03-25 09:05:47 +01:00 committed by Robert C. Helling
parent 04593e8ec4
commit 40a3e562b0
11 changed files with 24 additions and 39 deletions

View file

@ -137,9 +137,7 @@ QString GpsLocation::currentPosition()
if (delta < 300) {
// we can simply use the last position that we tracked
gpsTracker gt = m_trackers.last();
char *gps = printGPSCoords(&gt.location);
QString gpsString = gps;
free(gps);
QString gpsString = printGPSCoords(&gt.location);
qDebug() << "returning last position" << gpsString;
return gpsString;
} else {