From 2a9b19dabf0d0975545d142e1e1eb1cd1787be96 Mon Sep 17 00:00:00 2001 From: Obique PSWG Date: Sun, 4 Oct 2015 10:37:53 -0500 Subject: [PATCH] Fixed endianness issue with IntBuffer --- src/network/packets/Packet.java | 14 +++++++------- 1 file changed, 7 insertions(+), 7 deletions(-) diff --git a/src/network/packets/Packet.java b/src/network/packets/Packet.java index 950df84a4..e7a67e5ee 100644 --- a/src/network/packets/Packet.java +++ b/src/network/packets/Packet.java @@ -34,7 +34,6 @@ import utilities.Encoder; import java.net.InetAddress; import java.nio.ByteBuffer; import java.nio.ByteOrder; -import java.nio.IntBuffer; import java.nio.charset.Charset; import java.util.ArrayList; import java.util.Collection; @@ -247,17 +246,18 @@ public class Packet { } public static int [] getIntArray(ByteBuffer bb) { - IntBuffer ib = bb.asIntBuffer(); - int size = ib.get(); - int [] ints = new int[size]; - ib.get(ints); + bb.order(ByteOrder.LITTLE_ENDIAN); + int [] ints = new int[bb.getInt()]; + for (int i = 0; i < ints.length; i++) + ints[i] = bb.getInt(); return ints; } public static int [] getIntArray(ByteBuffer bb, int size) { - IntBuffer ib = bb.asIntBuffer(); + bb.order(ByteOrder.LITTLE_ENDIAN); int [] ints = new int[size]; - ib.get(ints); + for (int i = 0; i < ints.length; i++) + ints[i] = bb.getInt(); return ints; }