fix crash in particle renderer

This commit is contained in:
Bixilon 2022-12-23 15:55:27 +01:00
parent a12a3b0e7e
commit b8ef770685
No known key found for this signature in database
GPG Key ID: 5CAD791931B09AC4

View File

@ -134,7 +134,7 @@ class ParticleRenderer(
val particleViewDistance = connection.world.view.particleViewDistance val particleViewDistance = connection.world.view.particleViewDistance
particlesLock.acquire() particlesLock.lock()
try { try {
val time = millis() val time = millis()
val iterator = particles.iterator() val iterator = particles.iterator()
@ -148,19 +148,15 @@ class ParticleRenderer(
particle.tryTick(time) particle.tryTick(time)
} }
} }
} finally {
particlesLock.release()
}
particlesLock.lock()
particleQueueLock.lock() particleQueueLock.lock()
particles += particleQueue particles += particleQueue
particleQueue.clear() particleQueue.clear()
particleQueueLock.unlock() particleQueueLock.unlock()
} finally {
particlesLock.unlock() particlesLock.unlock()
} }
}
TimeWorker += particleTask TimeWorker += particleTask
connection::state.observe(this) { connection::state.observe(this) {