
Hi Ticker, - I think there is a small change in the handling of lines in OsmMapDataSource.readDeleteTagsFile. The old code used line = line.trim(); This is missing now. Is that intended? - I also don't understand the line with your comment "// ??? I don't understand this" . Looks like an endless recursive call? - You sometimes replaced FileReader, but not in CombinedStyleFileLoader. Why not? We have a few places where we read files which use "#" for comment lines. Would it help to create a class for that? I made a few minor mods, see attachment. Gerd ________________________________________ Von: mkgmap-dev <mkgmap-dev-bounces@lists.mkgmap.org.uk> im Auftrag von Ticker Berkin <rwb-mkgmap@jagit.co.uk> Gesendet: Freitag, 17. Januar 2020 13:53 An: Development list for mkgmap Betreff: [mkgmap-dev] StandardCharsets and try (with-resources) Hi Gerd Attached patch - uses StandardCharsets.* where possible. - notes some usage of the java local DefaultCharset. - changed a couple of these to force utf-8 instead. - if --read-config file gives decoding errors, names the charset used to read the file (ie DefaultCharset) instead of 'utf-8' in the error message. - accepts/ignores unicode BOM in more files - uses try (open...) {} where possible in files changed for the above reasons. There is some code in mkgmap/srt/SrtTextReader.java:sortForCodepage() that I don't understand; it would appear to get into a recursive loop on IOException. Ticker On Tue, 2020-01-14 at 09:55 +0000, Gerd Petermann wrote:
Hi Ticker,
yes, and every missing close() is a brain teaser ;) We have a few places where files are opened and closed in a different method. This is likely to cause trouble in unit tests, esp. on Windows. Whereever possible we should use try-with-ressources instead of Utils.closeFile() and add a comment like in SeaGenerator line in zipFile = new ZipFile(precompSeaDir); // don't close here! when a file is intentionally kept open.
Gerd
________________________________________ Von: mkgmap-dev <mkgmap-dev-bounces@lists.mkgmap.org.uk> im Auftrag von Ticker Berkin <rwb-mkgmap@jagit.co.uk> Gesendet: Dienstag, 14. Januar 2020 10:43 An: Development list for mkgmap Betreff: Re: [mkgmap-dev] TYP files and character encoding Hi Gerd Here is updated patch that closes the file, although I find many files in mkgmap that don't have explicit close(), but I presume .finalize() will close them eventually. I'll do another patch for other text file handling, using StandardCharset where possible and fixing TokenScanner message for bad characters if not utf-8 and, if reasonable, allowing a BOM even if the file is opened as utf-8 anyway. Ticker On Tue, 2020-01-14 at 08:21 +0000, Gerd Petermann wrote: Hi Ticker,
thanks for the patch.
Please review TypCompiler.CharsetProbe. BufferedReader br is not closed. Is that intended?
I see that we have a mix of "utf-8" and "UTF-8" in the mkgmap sources. I think it would be good to use StandardCharsets.UTF_8 where possible and unify the rest.