From 65b21a34c0e8d72c0e9ec30b2957720cdc8b74ee Mon Sep 17 00:00:00 2001 From: Morlok8k Date: Sun, 19 Aug 2012 02:20:27 -0700 Subject: [PATCH] minor RegEx tweek, fixed potential resource leak --- src/morlok8k/MinecraftLandGenerator/Coordinates.java | 7 +++++-- src/morlok8k/MinecraftLandGenerator/WorldVerify.java | 2 ++ 2 files changed, 7 insertions(+), 2 deletions(-) diff --git a/src/morlok8k/MinecraftLandGenerator/Coordinates.java b/src/morlok8k/MinecraftLandGenerator/Coordinates.java index d8d7814..d2316c1 100644 --- a/src/morlok8k/MinecraftLandGenerator/Coordinates.java +++ b/src/morlok8k/MinecraftLandGenerator/Coordinates.java @@ -101,20 +101,23 @@ public class Coordinates { int X = 0, Y = 0, Z = 0; boolean matched = false; Matcher shortForm = Pattern.compile("\\((-?\\d+),(-?\\d+)\\)").matcher(stringOfCoords); + Matcher normalForm = + Pattern.compile("\\[(-?\\d+),(-?\\d+),(-?\\d+)\\]").matcher(stringOfCoords); + if (shortForm.matches()) { X = Integer.parseInt(shortForm.group(1)); Y = 64; Z = Integer.parseInt(shortForm.group(2)); matched = true; } - Matcher normalForm = - Pattern.compile("\\[(-?\\d+),(-?\\d+),(-?\\d+)\\]").matcher(stringOfCoords); + if (normalForm.matches()) { X = Integer.parseInt(normalForm.group(1)); Y = Integer.parseInt(normalForm.group(2)); Z = Integer.parseInt(normalForm.group(3)); matched = true; } + if (!matched) { System.err.println("Invalid coordinate format: " + stringOfCoords); System.err.println(); diff --git a/src/morlok8k/MinecraftLandGenerator/WorldVerify.java b/src/morlok8k/MinecraftLandGenerator/WorldVerify.java index 1f57aa8..6d0412e 100644 --- a/src/morlok8k/MinecraftLandGenerator/WorldVerify.java +++ b/src/morlok8k/MinecraftLandGenerator/WorldVerify.java @@ -98,6 +98,8 @@ public class WorldVerify { } } + props.close(); + } catch (final FileNotFoundException ex) { Main.err("Could not open " + Main.serverPath + Main.fileSeparator + "server.properties"); return;