Fix to issue 446. (special characters in folder name causes crash)

This commit is contained in:
coolGi
2022-12-01 21:32:37 +10:30
parent be28ed8319
commit 6fd47f360c
2 changed files with 8 additions and 3 deletions
@@ -1,5 +1,6 @@
package com.seibel.lod.core.file.structure;
import com.google.common.net.PercentEscaper;
import com.seibel.lod.core.file.LevelToFileMatcher;
import com.seibel.lod.core.config.Config;
import com.seibel.lod.api.enums.config.EServerFolderNameMode;
@@ -65,7 +66,9 @@ public class ClientOnlySaveStructure extends SaveStructure {
folderName = serverName + ", IP " + serverIpCleaned + (serverPortCleaned.length() != 0 ? ("-" + serverPortCleaned) : "") + ", GameVersion " + serverMcVersion;
break;
}
return folderName;
// PercentEscaper makes the characters all part of the standard alphameric character set
// This fixes some issues when the server is named something in other languages
return new PercentEscaper("", true).escape(folderName);
}
LevelToFileMatcher fileMatcher = null;
@@ -23,6 +23,7 @@ import java.util.Iterator;
import java.util.concurrent.ExecutorService;
import java.util.concurrent.Executors;
import com.google.common.net.PercentEscaper;
import com.seibel.lod.core.config.Config;
import com.seibel.lod.api.enums.config.EServerFolderNameMode;
import com.seibel.lod.api.enums.config.EVanillaOverdraw;
@@ -234,8 +235,9 @@ public class LodUtil
folderName = serverName + ", IP " + serverIpCleaned + (serverPortCleaned.length() != 0 ? ("-" + serverPortCleaned) : "") + ", GameVersion " + serverMcVersion;
break;
}
return folderName;
// PercentEscaper makes the characters all part of the standard alphameric character set
// This fixes some issues when the server is named something in other languages
return new PercentEscaper("", true).escape(folderName);
}
public static int computeOverdrawOffset() {