From 18ec86425011fd1605fb0cdcf70a7c515b1ba14c Mon Sep 17 00:00:00 2001 From: Joshua Filby Date: Wed, 14 Nov 2018 20:09:26 -0600 Subject: [PATCH] cache: prevent dumping enums with no data --- .../net/runelite/cache/definitions/loaders/EnumLoader.java | 5 +++++ cache/src/test/java/net/runelite/cache/EnumDumperTest.java | 7 +++++-- 2 files changed, 10 insertions(+), 2 deletions(-) diff --git a/cache/src/main/java/net/runelite/cache/definitions/loaders/EnumLoader.java b/cache/src/main/java/net/runelite/cache/definitions/loaders/EnumLoader.java index b45290589d..83542c4fed 100644 --- a/cache/src/main/java/net/runelite/cache/definitions/loaders/EnumLoader.java +++ b/cache/src/main/java/net/runelite/cache/definitions/loaders/EnumLoader.java @@ -36,6 +36,11 @@ public class EnumLoader public EnumDefinition load(int id, byte[] b) { + if (b.length == 1 && b[0] == 0) + { + return null; + } + EnumDefinition def = new EnumDefinition(); InputStream is = new InputStream(b); diff --git a/cache/src/test/java/net/runelite/cache/EnumDumperTest.java b/cache/src/test/java/net/runelite/cache/EnumDumperTest.java index f2237ae120..a094b9fc24 100644 --- a/cache/src/test/java/net/runelite/cache/EnumDumperTest.java +++ b/cache/src/test/java/net/runelite/cache/EnumDumperTest.java @@ -78,8 +78,11 @@ public class EnumDumperTest EnumDefinition def = loader.load(file.getFileId(), b); - Files.write(gson.toJson(def), new File(dumpDir, file.getFileId() + ".json"), Charset.defaultCharset()); - ++count; + if (def != null) + { + Files.write(gson.toJson(def), new File(dumpDir, file.getFileId() + ".json"), Charset.defaultCharset()); + ++count; + } } }