From 35a54285e4e2e15d75f86f2978d025412c86dd8f Mon Sep 17 00:00:00 2001 From: Adrian Cojocaru Date: Tue, 25 Feb 2025 20:49:06 +0200 Subject: [PATCH] Fix texture view cleanup (#3254) --- .../textureview/VulkanTextureViewRenderThread.java | 11 +++++++++++ 1 file changed, 11 insertions(+) diff --git a/platform/android/MapLibreAndroid/src/vulkan/java/org/maplibre/android/maps/renderer/textureview/VulkanTextureViewRenderThread.java b/platform/android/MapLibreAndroid/src/vulkan/java/org/maplibre/android/maps/renderer/textureview/VulkanTextureViewRenderThread.java index 3b8a0715ba0..6b11c1569b4 100644 --- a/platform/android/MapLibreAndroid/src/vulkan/java/org/maplibre/android/maps/renderer/textureview/VulkanTextureViewRenderThread.java +++ b/platform/android/MapLibreAndroid/src/vulkan/java/org/maplibre/android/maps/renderer/textureview/VulkanTextureViewRenderThread.java @@ -15,6 +15,16 @@ public VulkanTextureViewRenderThread(@NonNull TextureView textureView, @NonNull super(textureView, mapRenderer); } + void cleanup() { + if (surface == null) { + return; + } + + mapRenderer.onSurfaceDestroyed(); + surface.release(); + surface = null; + } + // Thread implementation @Override @@ -121,6 +131,7 @@ public void run() { // Signal we're done synchronized (lock) { + cleanup(); this.exited = true; lock.notifyAll(); }