[graphite] Patch up some Vulkan shader issues

* The validator is complaining when we tear down the device that there
are shader modules still around, so clean up the shader modules that
don't get used yet to make a pipeline.
* At least one shader is failing to compile and we hadn't set up an
errorHandler.

Bug: b/277583609
Change-Id: I4c9f19aaed64c6ce596a127d0cfe5935efda67a0
Reviewed-on: https://skia-review.googlesource.com/c/skia/+/702840
Commit-Queue: Jim Van Verth <jvanverth@google.com>
Reviewed-by: Nicolette Prevost <nicolettep@google.com>
diff --git a/src/gpu/graphite/vk/VulkanCaps.cpp b/src/gpu/graphite/vk/VulkanCaps.cpp
index 0369928..552eacc 100644
--- a/src/gpu/graphite/vk/VulkanCaps.cpp
+++ b/src/gpu/graphite/vk/VulkanCaps.cpp
@@ -89,6 +89,8 @@
     if (!contextOptions.fDisableDriverCorrectnessWorkarounds) {
         this->applyDriverCorrectnessWorkarounds(physDevProperties);
     }
+
+    this->finishInitialization(contextOptions);
 }
 
 void VulkanCaps::applyDriverCorrectnessWorkarounds(const VkPhysicalDeviceProperties& properties) {
diff --git a/src/gpu/graphite/vk/VulkanResourceProvider.cpp b/src/gpu/graphite/vk/VulkanResourceProvider.cpp
index 006d77c..ce85880 100644
--- a/src/gpu/graphite/vk/VulkanResourceProvider.cpp
+++ b/src/gpu/graphite/vk/VulkanResourceProvider.cpp
@@ -169,6 +169,13 @@
         return {};
     }
 
+    // for now, clean up shader modules
+    VULKAN_CALL(this->vulkanSharedContext()->interface(),
+                DestroyShaderModule(this->vulkanSharedContext()->device(), vsModule, nullptr));
+    VULKAN_CALL(this->vulkanSharedContext()->interface(),
+                DestroyShaderModule(this->vulkanSharedContext()->device(), fsModule, nullptr));
+
+
     // TODO: Generate depth-stencil state, blend info
     return VulkanGraphicsPipeline::Make(this->vulkanSharedContext());
 }