diff --git a/src/main/java/cpw/mods/fml/client/FMLClientHandler.java b/src/main/java/cpw/mods/fml/client/FMLClientHandler.java index b87bc7e..8973317 100644 --- a/src/main/java/cpw/mods/fml/client/FMLClientHandler.java +++ b/src/main/java/cpw/mods/fml/client/FMLClientHandler.java @@ -58,6 +58,7 @@ import net.minecraft.network.ServerStatusResponse; import net.minecraft.server.MinecraftServer; import net.minecraft.util.ResourceLocation; +import net.minecraft.util.StringUtils; import net.minecraft.world.WorldSettings; import net.minecraft.world.storage.SaveFormatOld; @@ -1010,4 +1011,10 @@ Display.processMessages(); SplashProgress.mutex.release(); } + + @Override + public String stripSpecialChars(String message) + { + return StringUtils.stripControlCodes(message); + } } \ No newline at end of file diff --git a/src/main/java/cpw/mods/fml/common/FMLCommonHandler.java b/src/main/java/cpw/mods/fml/common/FMLCommonHandler.java index c5f5cce..3f37cc8 100644 --- a/src/main/java/cpw/mods/fml/common/FMLCommonHandler.java +++ b/src/main/java/cpw/mods/fml/common/FMLCommonHandler.java @@ -632,4 +632,9 @@ Runtime.getRuntime().exit(exitCode); } } + + public String stripSpecialChars(String message) + { + return sidedDelegate != null ? sidedDelegate.stripSpecialChars(message) : message; + } } \ No newline at end of file diff --git a/src/main/java/cpw/mods/fml/common/IFMLSidedHandler.java b/src/main/java/cpw/mods/fml/common/IFMLSidedHandler.java index 0672762..7461554 100644 --- a/src/main/java/cpw/mods/fml/common/IFMLSidedHandler.java +++ b/src/main/java/cpw/mods/fml/common/IFMLSidedHandler.java @@ -63,4 +63,6 @@ void allowLogins(); void processWindowMessages(); + + String stripSpecialChars(String message); } \ No newline at end of file diff --git a/src/main/java/cpw/mods/fml/common/ProgressManager.java b/src/main/java/cpw/mods/fml/common/ProgressManager.java index 38ffead..1211d00 100644 --- a/src/main/java/cpw/mods/fml/common/ProgressManager.java +++ b/src/main/java/cpw/mods/fml/common/ProgressManager.java @@ -71,7 +71,7 @@ { if(step >= steps) throw new IllegalStateException("too much steps for ProgressBar " + title); step++; - this.message = message; + this.message = FMLCommonHandler.instance().stripSpecialChars(message); FMLCommonHandler.instance().processWindowMessages(); } diff --git a/src/main/java/cpw/mods/fml/common/asm/transformers/EventSubscriptionTransformer.java b/src/main/java/cpw/mods/fml/common/asm/transformers/EventSubscriptionTransformer.java index 5ae8986..bd5f5c7 100644 --- a/src/main/java/cpw/mods/fml/common/asm/transformers/EventSubscriptionTransformer.java +++ b/src/main/java/cpw/mods/fml/common/asm/transformers/EventSubscriptionTransformer.java @@ -65,7 +65,7 @@ { if (buildEvents(classNode)) { - ClassWriter cw = new ClassWriter(COMPUTE_MAXS | COMPUTE_FRAMES); + ClassWriter cw = new ClassWriter(COMPUTE_FRAMES); classNode.accept(cw); return cw.toByteArray(); } diff --git a/src/main/java/cpw/mods/fml/server/FMLServerHandler.java b/src/main/java/cpw/mods/fml/server/FMLServerHandler.java index 114ce4a..c563a6f 100644 --- a/src/main/java/cpw/mods/fml/server/FMLServerHandler.java +++ b/src/main/java/cpw/mods/fml/server/FMLServerHandler.java @@ -259,7 +259,7 @@ { return DedicatedServer.allowPlayerLogins; } - + @Override public void allowLogins() { DedicatedServer.allowPlayerLogins = true; @@ -270,4 +270,10 @@ { // NOOP } + + @Override + public String stripSpecialChars(String message) + { + return message; + } } \ No newline at end of file