diff --git a/src/Aardvark.Rendering.GL/Runtime/LodRenderer.fs b/src/Aardvark.Rendering.GL/Runtime/LodRenderer.fs
index e7593d47..4c96e496 100644
--- a/src/Aardvark.Rendering.GL/Runtime/LodRenderer.fs
+++ b/src/Aardvark.Rendering.GL/Runtime/LodRenderer.fs
@@ -1894,68 +1894,70 @@ type LodRenderer(manager : ResourceManager, config : LodRendererConfig, roots :
let timer = new MultimediaTimer.Trigger(20)
let pickTrees = config.pickTrees
+ let reg = shutdown.Token.Register (System.Action(MVar.put changesPending))
while not shutdown.IsCancellationRequested do
timer.Wait()
MVar.take changesPending
- // atomic fetch
- let readers, removed =
- lock rootLock (fun () ->
- let roots = roots
- let removed = List