From 31de2a3a09e56836e9cd4e61bcc9a2790f9ab8c1 Mon Sep 17 00:00:00 2001 From: Wizjany Date: Sun, 24 Feb 2013 01:53:14 -0500 Subject: [PATCH] Update PropertiesConfiguration. Catch potential NPE. --- .../sk89q/worldedit/snapshots/SnapshotRepository.java | 7 ++++++- .../sk89q/worldedit/util/PropertiesConfiguration.java | 10 ++++++++++ 2 files changed, 16 insertions(+), 1 deletion(-) diff --git a/src/main/java/com/sk89q/worldedit/snapshots/SnapshotRepository.java b/src/main/java/com/sk89q/worldedit/snapshots/SnapshotRepository.java index 26928fb23..1ebdf8804 100644 --- a/src/main/java/com/sk89q/worldedit/snapshots/SnapshotRepository.java +++ b/src/main/java/com/sk89q/worldedit/snapshots/SnapshotRepository.java @@ -18,7 +18,6 @@ */ package com.sk89q.worldedit.snapshots; -import com.sk89q.worldedit.data.MissingWorldException; import java.io.File; import java.io.FilenameFilter; import java.util.ArrayList; @@ -26,6 +25,8 @@ import java.util.Calendar; import java.util.Collections; import java.util.List; +import com.sk89q.worldedit.data.MissingWorldException; + /** * * @author sk89q @@ -73,6 +74,7 @@ public class SnapshotRepository { */ public List getSnapshots(boolean newestFirst, String worldname) throws MissingWorldException { FilenameFilter filter = new FilenameFilter() { + @Override public boolean accept(File dir, String name) { File f = new File(dir, name); return isValidSnapshot(f); @@ -80,6 +82,9 @@ public class SnapshotRepository { }; File[] snapshotFiles = dir.listFiles(); + if (snapshotFiles == null) { + throw new MissingWorldException(worldname); + } List list = new ArrayList(snapshotFiles.length); for (File file : snapshotFiles) { diff --git a/src/main/java/com/sk89q/worldedit/util/PropertiesConfiguration.java b/src/main/java/com/sk89q/worldedit/util/PropertiesConfiguration.java index 5c7c4d733..e25fc3aaf 100644 --- a/src/main/java/com/sk89q/worldedit/util/PropertiesConfiguration.java +++ b/src/main/java/com/sk89q/worldedit/util/PropertiesConfiguration.java @@ -28,6 +28,7 @@ import java.io.OutputStream; import java.util.HashSet; import java.util.Properties; import java.util.Set; + import com.sk89q.util.StringUtil; import com.sk89q.worldedit.LocalConfiguration; import com.sk89q.worldedit.LocalSession; @@ -80,11 +81,14 @@ public class PropertiesConfiguration extends LocalConfiguration { disallowedBlocks = getIntSet("disallowed-blocks", defaultDisallowedBlocks); defaultChangeLimit = getInt("default-max-changed-blocks", defaultChangeLimit); maxChangeLimit = getInt("max-changed-blocks", maxChangeLimit); + defaultMaxPolygonalPoints = getInt("default-max-polygon-points", defaultMaxPolygonalPoints); + maxPolygonalPoints = getInt("max-polygon-points", maxPolygonalPoints); shellSaveType = getString("shell-save-type", shellSaveType); maxRadius = getInt("max-radius", maxRadius); maxSuperPickaxeSize = getInt("max-super-pickaxe-size", maxSuperPickaxeSize); maxBrushRadius = getInt("max-brush-radius", maxBrushRadius); logCommands = getBool("log-commands", logCommands); + logFile = getString("log-file", logFile); registerHelp = getBool("register-help", registerHelp); wandItem = getInt("wand-item", wandItem); superPickaxeDrop = getBool("super-pickaxe-drop-items", superPickaxeDrop); @@ -92,10 +96,16 @@ public class PropertiesConfiguration extends LocalConfiguration { noDoubleSlash = getBool("no-double-slash", noDoubleSlash); useInventory = getBool("use-inventory", useInventory); useInventoryOverride = getBool("use-inventory-override", useInventoryOverride); + useInventoryCreativeOverride = getBool("use-inventory-creative-override", useInventoryCreativeOverride); navigationWand = getInt("nav-wand-item", navigationWand); navigationWandMaxDistance = getInt("nav-wand-distance", navigationWandMaxDistance); scriptTimeout = getInt("scripting-timeout", scriptTimeout); + saveDir = getString("schematic-save-dir", saveDir); + scriptsDir = getString("craftscript-dir", scriptsDir); butcherDefaultRadius = getInt("butcher-default-radius", butcherDefaultRadius); + butcherMaxRadius = getInt("butcher-max-radius", butcherMaxRadius); + allowExtraDataValues = getBool("allow-extra-data-values", allowExtraDataValues); + allowSymlinks = getBool("allow-symbolic-links", allowSymlinks); LocalSession.MAX_HISTORY_SIZE = Math.max(15, getInt("history-size", 15));