diff --git a/fml/build.xml b/fml/build.xml
index 0cdc0ff8d..d3088b71a 100644
--- a/fml/build.xml
+++ b/fml/build.xml
@@ -381,23 +381,21 @@
+
+
+
+
+
+
-
-
-
-
-
+
-
-
-
-
-
+
diff --git a/fml/client/cpw/mods/fml/client/GuiCustomModLoadingErrorScreen.java b/fml/client/cpw/mods/fml/client/GuiCustomModLoadingErrorScreen.java
index 8212e0425..fbd8b20a9 100644
--- a/fml/client/cpw/mods/fml/client/GuiCustomModLoadingErrorScreen.java
+++ b/fml/client/cpw/mods/fml/client/GuiCustomModLoadingErrorScreen.java
@@ -5,7 +5,7 @@
* are made available under the terms of the GNU Lesser Public License v2.1
* which accompanies this distribution, and is available at
* http://www.gnu.org/licenses/old-licenses/gpl-2.0.html
- *
+ *
* Contributors:
* cpw - implementation
*/
@@ -21,6 +21,7 @@ public class GuiCustomModLoadingErrorScreen extends GuiErrorScreen
private CustomModLoadingErrorDisplayException customException;
public GuiCustomModLoadingErrorScreen(CustomModLoadingErrorDisplayException customException)
{
+ super(null,null);
this.customException = customException;
}
@Override
diff --git a/fml/client/cpw/mods/fml/client/GuiDupesFound.java b/fml/client/cpw/mods/fml/client/GuiDupesFound.java
index 7345bc76f..2fbf17b4b 100644
--- a/fml/client/cpw/mods/fml/client/GuiDupesFound.java
+++ b/fml/client/cpw/mods/fml/client/GuiDupesFound.java
@@ -5,7 +5,7 @@
* are made available under the terms of the GNU Lesser Public License v2.1
* which accompanies this distribution, and is available at
* http://www.gnu.org/licenses/old-licenses/gpl-2.0.html
- *
+ *
* Contributors:
* cpw - implementation
*/
@@ -29,6 +29,7 @@ public class GuiDupesFound extends GuiErrorScreen
public GuiDupesFound(DuplicateModsFoundException dupes)
{
+ super(null,null);
this.dupes = dupes;
}
diff --git a/fml/client/cpw/mods/fml/client/GuiModsMissing.java b/fml/client/cpw/mods/fml/client/GuiModsMissing.java
index 0597ebb94..04e67147b 100644
--- a/fml/client/cpw/mods/fml/client/GuiModsMissing.java
+++ b/fml/client/cpw/mods/fml/client/GuiModsMissing.java
@@ -24,6 +24,7 @@ public class GuiModsMissing extends GuiErrorScreen
public GuiModsMissing(MissingModsException modsMissing)
{
+ super(null,null);
this.modsMissing = modsMissing;
}
diff --git a/fml/client/cpw/mods/fml/client/GuiWrongMinecraft.java b/fml/client/cpw/mods/fml/client/GuiWrongMinecraft.java
index ff20808cc..6d87027db 100644
--- a/fml/client/cpw/mods/fml/client/GuiWrongMinecraft.java
+++ b/fml/client/cpw/mods/fml/client/GuiWrongMinecraft.java
@@ -5,7 +5,7 @@
* are made available under the terms of the GNU Lesser Public License v2.1
* which accompanies this distribution, and is available at
* http://www.gnu.org/licenses/old-licenses/gpl-2.0.html
- *
+ *
* Contributors:
* cpw - implementation
*/
@@ -22,6 +22,7 @@ public class GuiWrongMinecraft extends GuiErrorScreen
private WrongMinecraftVersionException wrongMC;
public GuiWrongMinecraft(WrongMinecraftVersionException wrongMC)
{
+ super(null,null);
this.wrongMC = wrongMC;
}
@Override
diff --git a/fml/common/cpw/mods/fml/common/patcher/GenDiffSet.java b/fml/common/cpw/mods/fml/common/patcher/GenDiffSet.java
index 96dcd6516..410b58768 100644
--- a/fml/common/cpw/mods/fml/common/patcher/GenDiffSet.java
+++ b/fml/common/cpw/mods/fml/common/patcher/GenDiffSet.java
@@ -2,7 +2,10 @@ package cpw.mods.fml.common.patcher;
import java.io.File;
import java.io.IOException;
+import java.util.Arrays;
import java.util.Collections;
+import java.util.List;
+import java.util.Locale;
import java.util.jar.JarEntry;
import java.util.jar.JarFile;
import java.util.logging.Level;
@@ -19,11 +22,13 @@ import cpw.mods.fml.repackage.com.nothome.delta.Delta;
public class GenDiffSet {
+ private static final List RESERVED_NAMES = Arrays.asList("CON", "PRN", "AUX", "NUL", "COM1", "COM2", "COM3", "COM4", "COM5", "COM6", "COM7", "COM8", "COM9", "LPT1", "LPT2", "LPT3", "LPT4", "LPT5", "LPT6", "LPT7", "LPT8", "LPT9");
+
public static void main(String[] args) throws IOException
{
String sourceJar = args[0]; //Clean Vanilla jar minecraft.jar or minecraft_server.jar
String targetDir = args[1]; //Directory containing obfed output classes, typically mcp/reobf/minecraft
- String deobfData = args[2]; //Path to FML's deobfusication_data.zip
+ String deobfData = args[2]; //Path to FML's deobfusication_data.lzma
String outputDir = args[3]; //Path to place generated .binpatch
String killTarget = args[4]; //"true" if we should destroy the target file if it generated a successful .binpatch
@@ -40,12 +45,19 @@ public class GenDiffSet {
for (String name : remapper.getObfedClasses())
{
// Logger.getLogger("GENDIFF").info(String.format("Evaluating path for data :%s",name));
- File targetFile = new File(targetDir, name.replace('/', File.separatorChar) + ".class");
+ String fileName = name;
+ String jarName = name;
+ if (RESERVED_NAMES.contains(name.toUpperCase(Locale.ENGLISH)))
+ {
+ fileName = "_"+name;
+ }
+ File targetFile = new File(targetDir, fileName.replace('/', File.separatorChar) + ".class");
+ jarName = jarName+".class";
if (targetFile.exists())
{
String sourceClassName = name.replace('/', '.');
String targetClassName = remapper.map(name).replace('/', '.');
- JarEntry entry = sourceZip.getJarEntry(name);
+ JarEntry entry = sourceZip.getJarEntry(jarName);
byte[] vanillaBytes = entry != null ? ByteStreams.toByteArray(sourceZip.getInputStream(entry)) : new byte[0];
byte[] patchedBytes = Files.toByteArray(targetFile);
diff --git a/fml/patches/minecraft/net/minecraft/client/gui/GuiErrorScreen.java.patch b/fml/patches/minecraft/net/minecraft/client/gui/GuiErrorScreen.java.patch
deleted file mode 100644
index ed520448b..000000000
--- a/fml/patches/minecraft/net/minecraft/client/gui/GuiErrorScreen.java.patch
+++ /dev/null
@@ -1,11 +0,0 @@
---- ../src-base/minecraft/net/minecraft/client/gui/GuiErrorScreen.java
-+++ ../src-work/minecraft/net/minecraft/client/gui/GuiErrorScreen.java
-@@ -22,6 +22,8 @@
- this.field_73887_h.add(new GuiButton(0, this.field_73880_f / 2 - 100, 140, I18n.func_135053_a("gui.cancel")));
- }
-
-+ public GuiErrorScreen(){}
-+
- public void func_73863_a(int p_73863_1_, int p_73863_2_, float p_73863_3_)
- {
- this.func_73733_a(0, 0, this.field_73880_f, this.field_73881_g, -12574688, -11530224);