diff --git a/src/mbgl/vulkan/dynamic_texture.cpp b/src/mbgl/vulkan/dynamic_texture.cpp index 797453258..e0c4c602b 100644 --- a/src/mbgl/vulkan/dynamic_texture.cpp +++ b/src/mbgl/vulkan/dynamic_texture.cpp @@ -56,6 +56,10 @@ void DynamicTexture::uploadImage(const uint8_t* pixelData, gfx::TextureHandle& t void DynamicTexture::uploadDeferredImages() { std::scoped_lock lock(mutex); + if (texturesToBlit.empty()) { + return; + } + const auto& textureVK = static_cast(texture.get()); context.submitOneTimeCommand(commandPool, [&](const vk::UniqueCommandBuffer& commandBuffer) { textureVK->transitionToTransferWriteLayout(commandBuffer); @@ -147,6 +151,10 @@ void DynamicTexture::uploadImage(const uint8_t* pixelData, gfx::TextureHandle& t void DynamicTexture::uploadDeferredImages() { std::scoped_lock lock(mutex); + if (textureBuffersToUpload.empty()) { + return; + } + const auto& textureVK = static_cast(texture.get()); context.submitOneTimeCommand([&](const vk::UniqueCommandBuffer& commandBuffer) { textureVK->transitionToTransferWriteLayout(commandBuffer);