more chunk fixes

Dieser Commit ist enthalten in:
Tahg 2011-02-11 02:01:32 -05:00
Ursprung 41e136b880
Commit c0b940d619
2 geänderte Dateien mit 16 neuen und 16 gelöschten Zeilen

Datei anzeigen

@ -196,20 +196,18 @@ public class ChunkProviderServer implements IChunkProvider {
public boolean a() {
if (!this.g.C) {
for (int i = 0; i < 100; ++i) {
if (!this.a.isEmpty()) {
// CraftBukkit start
long chunkcoordinates = this.a.popFirst();
Chunk chunk = e.get(chunkcoordinates);
if (chunk == null) continue;
// CraftBukkit end
chunk.e();
this.b(chunk);
this.a(chunk);
this.a.remove(chunkcoordinates);
this.e.remove(chunkcoordinates);
this.f.remove(chunk);
}
while (!this.a.isEmpty()) {
// CraftBukkit start
long chunkcoordinates = this.a.popFirst();
Chunk chunk = e.get(chunkcoordinates);
if (chunk == null) continue;
// CraftBukkit end
chunk.e();
this.b(chunk);
this.a(chunk);
this.a.remove(chunkcoordinates);
this.e.remove(chunkcoordinates);
this.f.remove(chunk);
}
if (this.d != null) {

Datei anzeigen

@ -32,7 +32,7 @@ public class LongHashset<V> extends LongHash<V> {
return;
}
}
outer[0] = inner = Arrays.copyOf(inner, i+1);
outer[outerIdx] = inner = Arrays.copyOf(inner, i+1);
inner[i] = key;
count++;
}
@ -82,12 +82,14 @@ public class LongHashset<V> extends LongHash<V> {
count--;
long ret = inner[inner.length - 1];
outer[i] = Arrays.copyOf(inner, inner.length - 1);
System.err.println("Removing chunk (" + msw(ret) + ", " + lsw(ret) + ")");
return ret;
}
}
return 0;
}
public long[] keys() {
int index = 0;
long ret[] = new long[count];