diff --git a/src/main/java/de/extio/game_engine/renderer/work/RendererWorkingSetImpl.java b/src/main/java/de/extio/game_engine/renderer/work/RendererWorkingSetImpl.java index 528b0dc..73c9547 100644 --- a/src/main/java/de/extio/game_engine/renderer/work/RendererWorkingSetImpl.java +++ b/src/main/java/de/extio/game_engine/renderer/work/RendererWorkingSetImpl.java @@ -30,7 +30,7 @@ public class RendererWorkingSetImpl implements RendererWorkingSet { final var previous = this.getWorkingSetByProducer(producerId) .next() .put(work.getId(), work); - if (previous != null) { + if (previous != null && previous != work) { this.rendererBoPool.release(previous); } } @@ -40,7 +40,7 @@ public class RendererWorkingSetImpl implements RendererWorkingSet { final var nextMap = this.getWorkingSetByProducer(producerId).next(); for (final RenderingBo bo : work) { final var previous = nextMap.put(bo.getId(), bo); - if (previous != null) { + if (previous != null && previous != bo) { this.rendererBoPool.release(previous); } }