From: Linus Torvalds Date: Sun, 9 Oct 2011 02:19:16 +0000 (+1200) Subject: Don't drop precision from floating point GP coordinates X-Git-Url: http://git.tdb.fi/?a=commitdiff_plain;h=0f9d1757a4590f554bcfc87f79c7a72baa5ad95d;p=ext%2Fsubsurface.git Don't drop precision from floating point GP coordinates Using '%f' limits the precision to 6 decimals, which may well be perfectly ok. But at least in theory you *could* have higher precision, and gps units will report it, so don't mindlessly limit us to what %f shows. This arbitrarily uses '%.12g' instead. %g will drop excess zeroes at the end, so it actually results in the same (or shorter) ascii representation unless you have the extra precision. Signed-off-by: Linus Torvalds --- diff --git a/save-xml.c b/save-xml.c index d6774b5..4183b1c 100644 --- a/save-xml.c +++ b/save-xml.c @@ -162,7 +162,7 @@ static void show_location(FILE *f, struct dive *dive) */ if (latitude || longitude) { int len = snprintf(buffer, sizeof(buffer)-4, - " ", + " ", latitude, longitude); if (!dive->location) { memcpy(&buffer[len-1], "/>\n", 4);