Vulkan: Fix readPixels to support sub image reads correctly

Also, do not return InvalidOperation from flush in order to be able to support
running dEQP tests  for Vulkan.

Bug:angleproject:2346

Change-Id: I12f3bd115034e044fb0fa2d94687321ede4a1e9d
Reviewed-on: https://chromium-review.googlesource.com/955889
Commit-Queue: Luc Ferron <lucferron@chromium.org>
Reviewed-by: Jamie Madill <jmadill@chromium.org>
diff --git a/src/libANGLE/renderer/vulkan/FramebufferVk.cpp b/src/libANGLE/renderer/vulkan/FramebufferVk.cpp
index b65d3f7..e5152ac 100644
--- a/src/libANGLE/renderer/vulkan/FramebufferVk.cpp
+++ b/src/libANGLE/renderer/vulkan/FramebufferVk.cpp
@@ -240,7 +240,7 @@
     vk::Image *readImage = renderTarget->image;
     vk::StagingImage stagingImage;
     ANGLE_TRY(stagingImage.init(contextVk, TextureDimension::TEX_2D, *renderTarget->format,
-                                renderTarget->extents, vk::StagingUsage::Read));
+                                gl::Extents(area.width, area.height, 1), vk::StagingUsage::Read));
 
     vk::CommandBuffer *commandBuffer = nullptr;
     ANGLE_TRY(beginWriteResource(renderer, &commandBuffer));