diff options
Diffstat (limited to 'src/gpu/vk/GrVkBackendContext.cpp')
-rw-r--r-- | src/gpu/vk/GrVkBackendContext.cpp | 3 |
1 files changed, 3 insertions, 0 deletions
diff --git a/src/gpu/vk/GrVkBackendContext.cpp b/src/gpu/vk/GrVkBackendContext.cpp index 0358618cd2..9506da5546 100644 --- a/src/gpu/vk/GrVkBackendContext.cpp +++ b/src/gpu/vk/GrVkBackendContext.cpp @@ -116,6 +116,7 @@ const GrVkBackendContext* GrVkBackendContext::Create() { err = vkEnumeratePhysicalDevices(inst, &gpuCount, nullptr); if (err) { SkDebugf("vkEnumeratePhysicalDevices failed: %d\n", err); + vkDestroyInstance(inst, nullptr); SkFAIL("failing"); } SkASSERT(gpuCount > 0); @@ -125,6 +126,7 @@ const GrVkBackendContext* GrVkBackendContext::Create() { err = vkEnumeratePhysicalDevices(inst, &gpuCount, &physDev); if (err) { SkDebugf("vkEnumeratePhysicalDevices failed: %d\n", err); + vkDestroyInstance(inst, nullptr); SkFAIL("failing"); } @@ -214,6 +216,7 @@ const GrVkBackendContext* GrVkBackendContext::Create() { err = vkCreateDevice(physDev, &deviceInfo, nullptr, &device); if (err) { SkDebugf("CreateDevice failed: %d\n", err); + vkDestroyInstance(inst, nullptr); return nullptr; } |