From: Keith Packard Date: Mon, 18 May 2015 17:52:24 +0000 (-0700) Subject: altoslib: Use Locale.ROOT for KML export X-Git-Tag: 1.6.0.3~89 X-Git-Url: https://git.gag.com/?p=fw%2Faltos;a=commitdiff_plain;h=3fbf0a29a1b8a67b90ef965ee3e2e972c0ec33a1 altoslib: Use Locale.ROOT for KML export This avoids locale-specific number formatting, which breaks googleearth when importing the resulting file. Signed-off-by: Keith Packard --- diff --git a/altoslib/AltosKML.java b/altoslib/AltosKML.java index aa80fc21..1a0fcf3d 100644 --- a/altoslib/AltosKML.java +++ b/altoslib/AltosKML.java @@ -18,11 +18,22 @@ package org.altusmetrum.altoslib_6; import java.io.*; +import java.util.*; + +class KMLWriter extends PrintWriter { + public PrintWriter printf(String format, Object ... arguments) { + return printf(Locale.ROOT, format, arguments); + } + + public KMLWriter(File name) throws FileNotFoundException { + super(name); + } +} public class AltosKML implements AltosWriter { File name; - PrintStream out; + PrintWriter out; int flight_state = -1; AltosState prev = null; double gps_start_altitude; @@ -137,6 +148,10 @@ public class AltosKML implements AltosWriter { end(); prev = null; } + if (out != null) { + out.close(); + out = null; + } } public void write(AltosState state) { @@ -177,7 +192,7 @@ public class AltosKML implements AltosWriter { public AltosKML(File in_name) throws FileNotFoundException { name = in_name; - out = new PrintStream(name); + out = new KMLWriter(name); } public AltosKML(String in_string) throws FileNotFoundException {