Make sure we check the version number of Vulkan Extensions.

Bug: skia:
Change-Id: Iff02911491cc61e39f94370c644b6666e5f9118f
Reviewed-on: https://skia-review.googlesource.com/137881
Commit-Queue: Greg Daniel <egdaniel@google.com>
Reviewed-by: Jim Van Verth <jvanverth@google.com>
Reviewed-by: Brian Salomon <bsalomon@google.com>
diff --git a/tools/sk_app/VulkanWindowContext.cpp b/tools/sk_app/VulkanWindowContext.cpp
index db5cc1e..01129bc 100644
--- a/tools/sk_app/VulkanWindowContext.cpp
+++ b/tools/sk_app/VulkanWindowContext.cpp
@@ -14,8 +14,8 @@
 
 #include "vk/GrVkExtensions.h"
 #include "vk/GrVkImage.h"
-#include "vk/GrVkUtil.h"
 #include "vk/GrVkTypes.h"
+#include "vk/GrVkUtil.h"
 
 #ifdef VK_USE_PLATFORM_WIN32_KHR
 // windows wants to define this as CreateSemaphoreA or CreateSemaphoreW
@@ -66,8 +66,8 @@
         return;
     }
 
-    if (!extensions.hasExtension(VK_KHR_SURFACE_EXTENSION_NAME) ||
-        !extensions.hasExtension(VK_KHR_SWAPCHAIN_EXTENSION_NAME)) {
+    if (!extensions.hasExtension(VK_KHR_SURFACE_EXTENSION_NAME, 25) ||
+        !extensions.hasExtension(VK_KHR_SWAPCHAIN_EXTENSION_NAME, 68)) {
         return;
     }
 
@@ -80,6 +80,9 @@
                                        &extensions));
 
     GET_PROC(DestroyInstance);
+    if (fDebugCallback != VK_NULL_HANDLE) {
+        GET_PROC(DestroyDebugReportCallbackEXT);
+    }
     GET_PROC(DestroySurfaceKHR);
     GET_PROC(GetPhysicalDeviceSurfaceSupportKHR);
     GET_PROC(GetPhysicalDeviceSurfaceCapabilitiesKHR);
@@ -453,8 +456,7 @@
 
 #ifdef SK_ENABLE_VK_LAYERS
     if (fDebugCallback != VK_NULL_HANDLE) {
-        GR_VK_CALL(fInterface, DestroyDebugReportCallbackEXT(fInstance, fDebugCallback,
-                                                             nullptr));
+        fDestroyDebugReportCallbackEXT(fInstance, fDebugCallback, nullptr);
     }
 #endif