Fix coverity issue : Vulkan::SurfaceImpl leak 01/320501/2
authorEunki, Hong <eunkiki.hong@samsung.com>
Tue, 4 Mar 2025 08:36:13 +0000 (17:36 +0900)
committerEunki, Hong <eunkiki.hong@samsung.com>
Wed, 5 Mar 2025 03:34:37 +0000 (12:34 +0900)
Change-Id: I18a4ffb39da57715eee4dd6d5ef238a79a8b2801
Signed-off-by: Eunki, Hong <eunkiki.hong@samsung.com>
dali/internal/graphics/vulkan/vulkan-device.cpp

index 32e060c381b59e1d968b58e2dd119b01f9b4b287..30efb21bae79570626a427c72592cc1448b503a8 100644 (file)
@@ -273,12 +273,14 @@ Graphics::SurfaceId Device::CreateSurface(
   }
 
   // create surface from the factory
-  auto* surface = new SurfaceImpl(*this, vulkanSurfaceFactory->Create(mInstance, mAllocator.get()));
-  if(!surface->GetVkHandle())
+  auto surfaceVkHandle = vulkanSurfaceFactory->Create(mInstance, mAllocator.get());
+  if(!surfaceVkHandle)
   {
-    return -1;
+    return -1; // fail
   }
 
+  auto* surface = new SurfaceImpl(*this, surfaceVkHandle);
+
   // Find a device that can support this surface.
   CreateDevice(surface);