diff --git a/src/NetTopologySuite/IO/WKTReader.cs b/src/NetTopologySuite/IO/WKTReader.cs index 8ebdb9f12..539ed3386 100644 --- a/src/NetTopologySuite/IO/WKTReader.cs +++ b/src/NetTopologySuite/IO/WKTReader.cs @@ -44,7 +44,7 @@ public class WKTReader private static readonly CoordinateSequenceFactory CoordinateSequenceFactoryXYZM = CoordinateArraySequenceFactory.Instance; - private static readonly StreamTokenizerSettings tokenizerSettings; + private static readonly StreamTokenizerSettings TokenizerSettings = CreateDefaultStreamTokenizerSettings(); private NtsGeometryServices _ntsGeometryServices; @@ -58,9 +58,9 @@ public class WKTReader */ private bool _isStrict = true; - static WKTReader() + private static StreamTokenizerSettings CreateDefaultStreamTokenizerSettings() { - tokenizerSettings = new StreamTokenizerSettings(); + var tokenizerSettings = new StreamTokenizerSettings(); tokenizerSettings.SetDefaults(); // set tokenizer to NOT parse numbers tokenizerSettings.ResetCharTypeTable(); @@ -73,6 +73,7 @@ static WKTReader() tokenizerSettings.WordChars('.', '.'); tokenizerSettings.WhitespaceChars(0, ' '); tokenizerSettings.CommentChar('#'); + return tokenizerSettings; } /// @@ -222,7 +223,7 @@ public Geometry Read(TextReader reader) internal TokenStream Tokenizer(TextReader reader) { - var tokenizer = new StreamTokenizer(reader, tokenizerSettings); + var tokenizer = new StreamTokenizer(reader, TokenizerSettings); return new TokenStream(tokenizer.GetEnumerator()); }