more chunk fixes

This commit is contained in:
Tahg 2011-02-11 02:01:32 -05:00
parent 41e136b880
commit c0b940d619
2 changed files with 16 additions and 16 deletions

View File

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

View File

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