summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
-rw-r--r--qthelper.cpp6
-rw-r--r--qthelper.h2
2 files changed, 4 insertions, 4 deletions
diff --git a/qthelper.cpp b/qthelper.cpp
index 902dc5e6d..8d4703b0a 100644
--- a/qthelper.cpp
+++ b/qthelper.cpp
@@ -31,7 +31,7 @@ QString weight_string(int weight_in_grams)
return (str);
}
-QString printGPSCoords(int lat, int lon)
+extern "C" const char *printGPSCoords(int lat, int lon)
{
unsigned int latdeg, londeg;
unsigned int latmin, lonmin;
@@ -39,7 +39,7 @@ QString printGPSCoords(int lat, int lon)
QString lath, lonh, result;
if (!lat && !lon)
- return QString();
+ return strdup("");
lath = lat >= 0 ? translate("gettextFromC", "N") : translate("gettextFromC", "S");
lonh = lon >= 0 ? translate("gettextFromC", "E") : translate("gettextFromC", "W");
@@ -54,7 +54,7 @@ QString printGPSCoords(int lat, int lon)
result.sprintf("%u%s%02d\'%06.3f\"%s %u%s%02d\'%06.3f\"%s",
latdeg, UTF8_DEGREE, latmin / 1000000, latsec / 1000000, lath.toUtf8().data(),
londeg, UTF8_DEGREE, lonmin / 1000000, lonsec / 1000000, lonh.toUtf8().data());
- return result;
+ return strdup(result.toUtf8().data());
}
static bool parseCoord(const QString& txt, int& pos, const QString& positives,
diff --git a/qthelper.h b/qthelper.h
index ccc57bc93..a367a9dac 100644
--- a/qthelper.h
+++ b/qthelper.h
@@ -13,7 +13,7 @@ extern QTranslator *qtTranslator, *ssrfTranslator;
QString weight_string(int weight_in_grams);
bool gpsHasChanged(struct dive *dive, struct dive *master, const QString &gps_text, bool *parsed_out = 0);
-QString printGPSCoords(int lat, int lon);
+extern "C" const char *printGPSCoords(int lat, int lon);
QList<int> getDivesInTrip(dive_trip_t *trip);
QString gasToStr(struct gasmix gas);