Merge remote-tracking branch 'origin/1.15' into 1.15

This commit is contained in:
MattBDev 2020-04-30 16:27:08 -04:00
commit 5fb18259d5
2 changed files with 20 additions and 26 deletions

View File

@ -206,10 +206,9 @@ public class BukkitGetBlocks_1_14 extends CharGetBlocks {
if (this.sections == null) { if (this.sections == null) {
this.sections = sections.clone(); this.sections = sections.clone();
} }
//TODO: Understand why this causes #329, what the purpose of this is, and what may or may not break after commenting this out. if (this.sections[layer] != section) {
// if (this.sections[layer] != section) { this.sections[layer] = section;
// this.sections[layer] = section; }
// }
this.blocks[layer] = arr; this.blocks[layer] = arr;
} }
} }
@ -279,19 +278,17 @@ public class BukkitGetBlocks_1_14 extends CharGetBlocks {
synchronized (this) { synchronized (this) {
synchronized (lock) { synchronized (lock) {
lock.untilFree(); lock.untilFree();
ChunkSection getSection;
if (this.nmsChunk != nmsChunk) { if (this.nmsChunk != nmsChunk) {
this.nmsChunk = nmsChunk; this.nmsChunk = nmsChunk;
this.sections = null; this.sections = null;
this.reset(); this.reset();
} else { } else if (existingSection != getSections()[layer]) {
getSection = this.getSections()[layer]; this.sections[layer] = existingSection;
if (getSection != existingSection) { this.reset();
this.sections[layer] = existingSection; } else if (!Arrays.equals(update(layer, new char[4096]), load(layer))) {
this.reset(); this.reset(layer);
} else if (lock.isModified()) { } else if (lock.isModified()) {
this.reset(layer); this.reset(layer);
}
} }
newSection = BukkitAdapter_1_14.newChunkSection(layer, this::load, setArr); newSection = BukkitAdapter_1_14.newChunkSection(layer, this::load, setArr);
if (!BukkitAdapter_1_14.setSectionAtomic(sections, existingSection, newSection, layer)) { if (!BukkitAdapter_1_14.setSectionAtomic(sections, existingSection, newSection, layer)) {

View File

@ -214,10 +214,9 @@ public class BukkitGetBlocks_1_15 extends CharGetBlocks {
if (this.sections == null) { if (this.sections == null) {
this.sections = sections.clone(); this.sections = sections.clone();
} }
//TODO: Understand why this causes #329, what the purpose of this is, and what may or may not break after commenting this out. if (this.sections[layer] != section) {
// if (this.sections[layer] != section) { this.sections[layer] = section;
// this.sections[layer] = section; }
// }
this.blocks[layer] = arr; this.blocks[layer] = arr;
} }
} }
@ -287,19 +286,17 @@ public class BukkitGetBlocks_1_15 extends CharGetBlocks {
synchronized (this) { synchronized (this) {
synchronized (lock) { synchronized (lock) {
lock.untilFree(); lock.untilFree();
ChunkSection getSection;
if (this.nmsChunk != nmsChunk) { if (this.nmsChunk != nmsChunk) {
this.nmsChunk = nmsChunk; this.nmsChunk = nmsChunk;
this.sections = null; this.sections = null;
this.reset(); this.reset();
} else { } else if (existingSection != getSections()[layer]) {
getSection = this.getSections()[layer]; this.sections[layer] = existingSection;
if (getSection != existingSection) { this.reset();
this.sections[layer] = existingSection; } else if (!Arrays.equals(update(layer, new char[4096]), load(layer))) {
this.reset(); this.reset(layer);
} else if (lock.isModified()) { } else if (lock.isModified()) {
this.reset(layer); this.reset(layer);
}
} }
newSection = BukkitAdapter_1_15.newChunkSection(layer, this::load, setArr); newSection = BukkitAdapter_1_15.newChunkSection(layer, this::load, setArr);
if (!BukkitAdapter_1_15.setSectionAtomic(sections, existingSection, newSection, layer)) { if (!BukkitAdapter_1_15.setSectionAtomic(sections, existingSection, newSection, layer)) {