Improved packet handling

Dieser Commit ist enthalten in:
Tahg 2011-05-27 11:01:37 -04:00 committet von Erik Broes
Ursprung 1784e42d5f
Commit 9ec5d8b5df
2 geänderte Dateien mit 11 neuen und 1 gelöschten Zeilen

Datei anzeigen

@ -105,7 +105,8 @@ public class NetworkManager {
flag = true;
}
if (this.z-- <= 0 && !this.o.isEmpty() && (this.f == 0 || System.currentTimeMillis() - ((Packet) this.o.get(0)).timestamp >= (long) this.f)) {
// CraftBukkit - add 'flag'
if ((!flag || this.z-- <= 0) && !this.o.isEmpty() && (this.f == 0 || System.currentTimeMillis() - ((Packet) this.o.get(0)).timestamp >= (long) this.f)) {
object = this.g;
synchronized (this.g) {
packet = (Packet) this.o.remove(0);

Datei anzeigen

@ -69,6 +69,11 @@ public abstract class Packet {
int i;
try {
// CraftBukkit start - sleep while nothing to do
while(datainputstream.available() <= 0) {
Thread.sleep(10);
}
// CraftBukkit end
i = datainputstream.read();
if (i == -1) {
return null;
@ -97,6 +102,10 @@ public abstract class Packet {
System.out.println("Connection reset");
return null;
}
catch (InterruptedException exception) {
System.out.println("Thread exception");
return null;
}
// CraftBukkit end
PacketCounter packetcounter = (PacketCounter) e.get(Integer.valueOf(i));