mirror of
https://github.com/PaperMC/Paper.git
synced 2024-09-12 15:08:27 +02:00
82 lines
2.5 KiB
Diff
82 lines
2.5 KiB
Diff
--- ../work/decompile-8eb82bde//net/minecraft/server/RegionFile.java 2014-11-28 17:43:43.361707429 +0000
|
|
+++ src/main/java/net/minecraft/server/RegionFile.java 2014-11-28 17:38:17.000000000 +0000
|
|
@@ -86,8 +86,46 @@
|
|
} catch (IOException ioexception) {
|
|
ioexception.printStackTrace();
|
|
}
|
|
+ }
|
|
+
|
|
+ // CraftBukkit start - This is a copy (sort of) of the method below it, make sure they stay in sync
|
|
+ public synchronized boolean chunkExists(int i, int j) {
|
|
+ if (this.d(i, j)) {
|
|
+ return false;
|
|
+ } else {
|
|
+ try {
|
|
+ int k = this.e(i, j);
|
|
+
|
|
+ if (k == 0) {
|
|
+ return false;
|
|
+ } else {
|
|
+ int l = k >> 8;
|
|
+ int i1 = k & 255;
|
|
+
|
|
+ if (l + i1 > this.f.size()) {
|
|
+ return false;
|
|
+ }
|
|
+
|
|
+ this.c.seek((long) (l * 4096));
|
|
+ int j1 = this.c.readInt();
|
|
+
|
|
+ if (j1 > 4096 * i1 || j1 <= 0) {
|
|
+ return false;
|
|
+ }
|
|
+
|
|
+ byte b0 = this.c.readByte();
|
|
+ if (b0 == 1 || b0 == 2) {
|
|
+ return true;
|
|
+ }
|
|
+ }
|
|
+ } catch (IOException ioexception) {
|
|
+ return false;
|
|
+ }
|
|
+ }
|
|
|
|
+ return false;
|
|
}
|
|
+ // CraftBukkit end
|
|
|
|
public synchronized DataInputStream a(int i, int j) {
|
|
if (this.d(i, j)) {
|
|
@@ -214,7 +252,7 @@
|
|
|
|
}
|
|
|
|
- private void a(int i, byte[] abyte, int j) {
|
|
+ private void a(int i, byte[] abyte, int j) throws IOException { // CraftBukkit - added throws
|
|
this.c.seek((long) (i * 4096));
|
|
this.c.writeInt(j + 1);
|
|
this.c.writeByte(2);
|
|
@@ -233,19 +271,19 @@
|
|
return this.e(i, j) != 0;
|
|
}
|
|
|
|
- private void a(int i, int j, int k) {
|
|
+ private void a(int i, int j, int k) throws IOException { // CraftBukkit - added throws
|
|
this.d[i + j * 32] = k;
|
|
this.c.seek((long) ((i + j * 32) * 4));
|
|
this.c.writeInt(k);
|
|
}
|
|
|
|
- private void b(int i, int j, int k) {
|
|
+ private void b(int i, int j, int k) throws IOException { // CraftBukkit - added throws
|
|
this.e[i + j * 32] = k;
|
|
this.c.seek((long) (4096 + (i + j * 32) * 4));
|
|
this.c.writeInt(k);
|
|
}
|
|
|
|
- public void c() {
|
|
+ public void c() throws IOException { // CraftBukkit - added throws
|
|
if (this.c != null) {
|
|
this.c.close();
|
|
}
|