diff options
| author | 2016-10-31 14:03:05 +0100 | |
|---|---|---|
| committer | 2016-10-31 14:03:05 +0100 | |
| commit | 65879b77668b91e15a1c0029615aae0206f932c8 (patch) | |
| tree | 7598e612d9788b1e0f9631bad6e694aeb686c14c /src/main/java/cuchaz | |
| parent | BREAKING CHANGE: Implement modifier transformer (diff) | |
| download | enigma-65879b77668b91e15a1c0029615aae0206f932c8.tar.gz enigma-65879b77668b91e15a1c0029615aae0206f932c8.tar.xz enigma-65879b77668b91e15a1c0029615aae0206f932c8.zip | |
Fix NPE with converter when computeClassMatches
Diffstat (limited to 'src/main/java/cuchaz')
| -rw-r--r-- | src/main/java/cuchaz/enigma/mapping/MappingsEnigmaWriter.java | 33 |
1 files changed, 18 insertions, 15 deletions
diff --git a/src/main/java/cuchaz/enigma/mapping/MappingsEnigmaWriter.java b/src/main/java/cuchaz/enigma/mapping/MappingsEnigmaWriter.java index 95896898..c09f4a67 100644 --- a/src/main/java/cuchaz/enigma/mapping/MappingsEnigmaWriter.java +++ b/src/main/java/cuchaz/enigma/mapping/MappingsEnigmaWriter.java | |||
| @@ -59,24 +59,27 @@ public class MappingsEnigmaWriter { | |||
| 59 | } | 59 | } |
| 60 | 60 | ||
| 61 | // Remove dropped mappings | 61 | // Remove dropped mappings |
| 62 | List<ClassMapping> droppedClassMappings = new ArrayList<>(mappings.getPreviousState().classes()); | 62 | if (mappings.getPreviousState() != null) |
| 63 | List<ClassMapping> classMappings = new ArrayList<>(mappings.classes()); | ||
| 64 | droppedClassMappings.removeAll(classMappings); | ||
| 65 | for (ClassMapping classMapping : droppedClassMappings) | ||
| 66 | { | 63 | { |
| 67 | File obFile = new File(target, classMapping.getObfFullName() + ".mapping"); | 64 | List<ClassMapping> droppedClassMappings = new ArrayList<>(mappings.getPreviousState().classes()); |
| 68 | File result; | 65 | List<ClassMapping> classMappings = new ArrayList<>(mappings.classes()); |
| 69 | if (classMapping.getDeobfName() == null) | 66 | droppedClassMappings.removeAll(classMappings); |
| 70 | result = obFile; | 67 | for (ClassMapping classMapping : droppedClassMappings) |
| 71 | else | ||
| 72 | { | 68 | { |
| 73 | // Make sure that old version of the file doesn't exist | 69 | File obFile = new File(target, classMapping.getObfFullName() + ".mapping"); |
| 74 | if (obFile.exists()) | 70 | File result; |
| 75 | obFile.delete(); | 71 | if (classMapping.getDeobfName() == null) |
| 76 | result = new File(target, classMapping.getDeobfName() + ".mapping"); | 72 | result = obFile; |
| 73 | else | ||
| 74 | { | ||
| 75 | // Make sure that old version of the file doesn't exist | ||
| 76 | if (obFile.exists()) | ||
| 77 | obFile.delete(); | ||
| 78 | result = new File(target, classMapping.getDeobfName() + ".mapping"); | ||
| 79 | } | ||
| 80 | if (result.exists()) | ||
| 81 | result.delete(); | ||
| 77 | } | 82 | } |
| 78 | if (result.exists()) | ||
| 79 | result.delete(); | ||
| 80 | } | 83 | } |
| 81 | } | 84 | } |
| 82 | 85 | ||