diff options
Diffstat (limited to 'src/main')
-rw-r--r-- | src/main/java/kr/syeyoung/dungeonsguide/Authenticator.java | 11 | ||||
-rw-r--r-- | src/main/java/kr/syeyoung/dungeonsguide/DungeonsGuideMain.java | 24 |
2 files changed, 30 insertions, 5 deletions
diff --git a/src/main/java/kr/syeyoung/dungeonsguide/Authenticator.java b/src/main/java/kr/syeyoung/dungeonsguide/Authenticator.java index eb6cecb6..80f5a94d 100644 --- a/src/main/java/kr/syeyoung/dungeonsguide/Authenticator.java +++ b/src/main/java/kr/syeyoung/dungeonsguide/Authenticator.java @@ -139,9 +139,14 @@ public class Authenticator { ZipInputStream inputStream1 = new ZipInputStream(cipherInputStream); ZipEntry zipEntry; while ((zipEntry=inputStream1.getNextEntry()) != null) { - byte[] content = new byte[(int) zipEntry.getSize()]; - IOUtils.readFully(inputStream1, content); - dynamicResources.put(zipEntry.getName(), content); + byte[] buffer = new byte[256]; + ByteArrayOutputStream baos = new ByteArrayOutputStream(); + int size = 0; + while((size = inputStream1.read(buffer)) > 0) { + baos.write(buffer, 0, size); + } + + dynamicResources.put(zipEntry.getName(), buffer); } huc.disconnect(); } diff --git a/src/main/java/kr/syeyoung/dungeonsguide/DungeonsGuideMain.java b/src/main/java/kr/syeyoung/dungeonsguide/DungeonsGuideMain.java index 54d10a51..2e21e33e 100644 --- a/src/main/java/kr/syeyoung/dungeonsguide/DungeonsGuideMain.java +++ b/src/main/java/kr/syeyoung/dungeonsguide/DungeonsGuideMain.java @@ -14,8 +14,13 @@ import net.minecraftforge.fml.common.Mod.EventHandler; import net.minecraftforge.fml.common.event.FMLInitializationEvent; import net.minecraftforge.fml.common.event.FMLPreInitializationEvent; +import javax.crypto.BadPaddingException; +import javax.crypto.IllegalBlockSizeException; +import javax.crypto.NoSuchPaddingException; import java.io.*; import java.net.URL; +import java.security.InvalidAlgorithmParameterException; +import java.security.InvalidKeyException; import java.security.NoSuchAlgorithmException; @Mod(modid = DungeonsGuideMain.MODID, version = DungeonsGuideMain.VERSION) @@ -67,12 +72,27 @@ public class DungeonsGuideMain e.printStackTrace(); } catch (NoSuchAlgorithmException e) { e.printStackTrace(); + } catch (NoSuchPaddingException e) { + e.printStackTrace(); + } catch (InvalidKeyException e) { + e.printStackTrace(); + } catch (InvalidAlgorithmParameterException e) { + e.printStackTrace(); + } catch (IllegalBlockSizeException e) { + e.printStackTrace(); + } catch (BadPaddingException e) { + e.printStackTrace(); } error(new String[]{ "Can't validate current installation of Dungeons Guide", - "Please contact mod author if you purchased this mod and getting this error", - "And if you haven't purchased the mod, please consider doing so" + "Steps to fix", + "1. check if other people can't join minecraft servers. If they can't it's impossible to validate", + "2. restart minecraft launcher", + "3. make sure you're on the right account", + "4. restart your computer", + "If the problem persists after following these steps, please contact developer", + "If you haven't purchased the mod, please consider doing so" }); } |