From 52452e356dc995837b25557185d8ed48929e3b3d Mon Sep 17 00:00:00 2001 From: James Seibel Date: Sat, 9 Nov 2024 09:53:28 -0600 Subject: [PATCH] fix upload canceling --- .../render/bufferBuilding/ColumnRenderBuffer.java | 5 ++++- 1 file changed, 4 insertions(+), 1 deletion(-) diff --git a/core/src/main/java/com/seibel/distanthorizons/core/dataObjects/render/bufferBuilding/ColumnRenderBuffer.java b/core/src/main/java/com/seibel/distanthorizons/core/dataObjects/render/bufferBuilding/ColumnRenderBuffer.java index d61394ad9..f8e2b6202 100644 --- a/core/src/main/java/com/seibel/distanthorizons/core/dataObjects/render/bufferBuilding/ColumnRenderBuffer.java +++ b/core/src/main/java/com/seibel/distanthorizons/core/dataObjects/render/bufferBuilding/ColumnRenderBuffer.java @@ -105,15 +105,18 @@ public class ColumnRenderBuffer implements AutoCloseable { try { - if (Thread.interrupted()) + // skip this event if requested + if (Thread.interrupted() || this.uploadFuture.isCancelled()) { throw new InterruptedException(); } + // upload on the render thread uploadBuffersDirect(this.vbos, opaqueBuffers, gpuUploadMethod); uploadBuffersDirect(this.vbosTransparent, transparentBuffers, gpuUploadMethod); this.buffersUploaded = true; + // success this.uploadFuture.complete(this); this.uploadFuture = null; }