diff --git a/worldedit-core/src/main/java/com/boydti/fawe/beta/implementation/lighting/NMSRelighter.java b/worldedit-core/src/main/java/com/boydti/fawe/beta/implementation/lighting/NMSRelighter.java index cccda08c3..a7cdcd6b7 100644 --- a/worldedit-core/src/main/java/com/boydti/fawe/beta/implementation/lighting/NMSRelighter.java +++ b/worldedit-core/src/main/java/com/boydti/fawe/beta/implementation/lighting/NMSRelighter.java @@ -95,7 +95,7 @@ public class NMSRelighter implements Relighter { } @Override - public synchronized ReentrantLock getLock() { + public ReentrantLock getLock() { return lightingLock; } diff --git a/worldedit-core/src/main/java/com/sk89q/worldedit/EditSession.java b/worldedit-core/src/main/java/com/sk89q/worldedit/EditSession.java index 36870aeef..5ace70cbf 100644 --- a/worldedit-core/src/main/java/com/sk89q/worldedit/EditSession.java +++ b/worldedit-core/src/main/java/com/sk89q/worldedit/EditSession.java @@ -1099,7 +1099,7 @@ public class EditSession extends PassthroughExtent implements AutoCloseable { try { if (relighter != null && !(relighter instanceof NullRelighter)) { // Only relight once! - if (!relighter.getLock().tryLock()) { + if (Settings.IMP.LIGHTING.DELAY_PACKET_SENDING && !relighter.getLock().tryLock()) { relighter.getLock().lock(); relighter.getLock().unlock(); } else { @@ -1109,6 +1109,9 @@ public class EditSession extends PassthroughExtent implements AutoCloseable { relighter.fixSkyLighting(); relighter.fixBlockLighting(); } + if (Settings.IMP.LIGHTING.DELAY_PACKET_SENDING) { + relighter.getLock().unlock(); + } } } } catch (Throwable e) {