From 46e65704d75d350d17b6fa5ef7ef28c5bcf54cc5 Mon Sep 17 00:00:00 2001 From: James Seibel Date: Sun, 27 Jun 2021 13:12:38 -0500 Subject: [PATCH] Potentially fix #34 (Replace "\" in file paths with File.separatorChar to allow for use on Linux) I can't currently test if this fixed the problem since I don't have a Linux install to test on. --- .../lod/handlers/LodDimensionFileHandler.java | 4 ++-- .../java/com/seibel/lod/objects/LodDimension.java | 8 ++++---- src/main/java/com/seibel/lod/util/LodUtil.java | 13 +++++++------ 3 files changed, 13 insertions(+), 12 deletions(-) diff --git a/src/main/java/com/seibel/lod/handlers/LodDimensionFileHandler.java b/src/main/java/com/seibel/lod/handlers/LodDimensionFileHandler.java index e87042b71..418ce5c5b 100644 --- a/src/main/java/com/seibel/lod/handlers/LodDimensionFileHandler.java +++ b/src/main/java/com/seibel/lod/handlers/LodDimensionFileHandler.java @@ -20,7 +20,7 @@ import com.seibel.lod.proxy.ClientProxy; * to file. * * @author James Seibel - * @version 6-13-2021 + * @version 6-27-2021 */ public class LodDimensionFileHandler { @@ -332,7 +332,7 @@ public class LodDimensionFileHandler // ".\Super Flat\DIM-1\data" // or // ".\Super Flat\data" - return dimensionDataSaveFolder.getCanonicalPath() + "\\" + + return dimensionDataSaveFolder.getCanonicalPath() + File.separatorChar + FILE_NAME_PREFIX + "." + detail.toString() + "." + regionX + "." + regionZ + FILE_EXTENSION; } catch(IOException e) diff --git a/src/main/java/com/seibel/lod/objects/LodDimension.java b/src/main/java/com/seibel/lod/objects/LodDimension.java index 17ffe5c4b..48b654d49 100644 --- a/src/main/java/com/seibel/lod/objects/LodDimension.java +++ b/src/main/java/com/seibel/lod/objects/LodDimension.java @@ -17,7 +17,7 @@ import net.minecraft.world.server.ServerWorld; * for a given dimension. * * @author James Seibel - * @version 06-19-2021 + * @version 06-27-2021 */ public class LodDimension { @@ -53,14 +53,14 @@ public class LodDimension // provider needs a separate variable to prevent // the compiler from complaining ServerChunkProvider provider = serverWorld.getChunkProvider(); - saveDir = new File(provider.getSavedData().folder.getCanonicalFile() + "\\lod"); + saveDir = new File(provider.getSavedData().folder.getCanonicalFile().getPath() + File.separatorChar + "lod"); } else { // connected to server - saveDir = new File(mc.gameDir.getCanonicalFile() + - "\\lod server data\\" + LodUtil.getDimensionIDFromWorld(mc.world)); + saveDir = new File(mc.gameDir.getCanonicalFile().getPath() + + File.separatorChar + "lod server data" + File.separatorChar + LodUtil.getDimensionIDFromWorld(mc.world)); } fileHandler = new LodDimensionFileHandler(saveDir, this); diff --git a/src/main/java/com/seibel/lod/util/LodUtil.java b/src/main/java/com/seibel/lod/util/LodUtil.java index 747682555..754f608da 100644 --- a/src/main/java/com/seibel/lod/util/LodUtil.java +++ b/src/main/java/com/seibel/lod/util/LodUtil.java @@ -1,6 +1,7 @@ package com.seibel.lod.util; import java.awt.Color; +import java.io.File; import com.seibel.lod.objects.LodRegion; import com.seibel.lod.objects.RegionPos; @@ -20,7 +21,7 @@ import net.minecraft.world.server.ServerWorld; * This class holds methods that may be used in multiple places. * * @author James Seibel - * @version 06-19-2021 + * @version 06-27-2021 */ public class LodUtil { @@ -143,8 +144,8 @@ public class LodUtil ServerData server = mc.getCurrentServerData(); return server.serverName + ", IP " + server.serverIP + ", GameVersion " + - server.gameVersion.getString() + "\\" - + "dim_" + mc.world.getDimensionType().getEffects().getPath() + "\\"; + server.gameVersion.getString() + File.separatorChar + + "dim_" + mc.world.getDimensionType().getEffects().getPath() + File.separatorChar; } } @@ -181,8 +182,8 @@ public class LodUtil ServerData server = mc.getCurrentServerData(); return server.serverName + ", IP " + server.serverIP + ", GameVersion " + - server.gameVersion.getString() + "\\" - + "dim_" + world.getDimensionType().getEffects().getPath() + "\\"; + server.gameVersion.getString() + File.separatorChar + + "dim_" + world.getDimensionType().getEffects().getPath() + File.separatorChar; } } @@ -200,7 +201,7 @@ public class LodUtil // get the world name int saveIndex = dimId.indexOf("saves") + 1 + "saves".length(); - int slashIndex = dimId.indexOf('\\', saveIndex); + int slashIndex = dimId.indexOf(File.separatorChar, saveIndex); dimId = dimId.substring(saveIndex, slashIndex); return dimId; }