aboutsummaryrefslogtreecommitdiffhomepage
diff options
context:
space:
mode:
authorGravatar Ethan Nicholas <ethannicholas@google.com>2017-10-26 10:24:16 -0400
committerGravatar Skia Commit-Bot <skia-commit-bot@chromium.org>2017-10-26 15:19:26 +0000
commita8e40de7a266dc82f60684c262b2b3234a37a510 (patch)
treed532620848e1bd421bbf5c57c975e777396e8af0
parentd608c09ac5d862568962d63e62e693d22c58f95c (diff)
workaround for VkWrapTests crash
Bug: skia: Change-Id: I60abda0bcbfbe9f8918f4a8d0a714c0e877e7cad Reviewed-on: https://skia-review.googlesource.com/64062 Reviewed-by: Greg Daniel <egdaniel@google.com> Commit-Queue: Ethan Nicholas <ethannicholas@google.com>
-rw-r--r--src/gpu/vk/GrVkGpu.cpp6
1 files changed, 4 insertions, 2 deletions
diff --git a/src/gpu/vk/GrVkGpu.cpp b/src/gpu/vk/GrVkGpu.cpp
index 3b40f27480..198a00ed8e 100644
--- a/src/gpu/vk/GrVkGpu.cpp
+++ b/src/gpu/vk/GrVkGpu.cpp
@@ -1489,8 +1489,10 @@ GrBackendObject GrVkGpu::createTestingOnlyBackendTexture(void* srcData, int w, i
SkASSERT(!err);
// Clean up transfer resources
- GrVkMemory::FreeBufferMemory(this, GrVkBuffer::kCopyRead_Type, bufferAlloc);
- VK_CALL(DestroyBuffer(fDevice, buffer, nullptr));
+ if (buffer != VK_NULL_HANDLE) { // workaround for an older NVidia driver crash
+ GrVkMemory::FreeBufferMemory(this, GrVkBuffer::kCopyRead_Type, bufferAlloc);
+ VK_CALL(DestroyBuffer(fDevice, buffer, nullptr));
+ }
VK_CALL(FreeCommandBuffers(fDevice, fCmdPool, 1, &cmdBuffer));
VK_CALL(DestroyFence(fDevice, fence, nullptr));