| Index: src/gpu/vk/GrVkGpu.cpp
|
| diff --git a/src/gpu/vk/GrVkGpu.cpp b/src/gpu/vk/GrVkGpu.cpp
|
| index e5d24fc5806ff8044a55da6416b311f9c9bcb8f3..ab6761cc32b5ccda141ca310bdd8215ed9065ed8 100644
|
| --- a/src/gpu/vk/GrVkGpu.cpp
|
| +++ b/src/gpu/vk/GrVkGpu.cpp
|
| @@ -425,9 +425,9 @@ bool GrVkGpu::uploadTexDataLinear(GrVkTexture* tex,
|
| }
|
|
|
| bool GrVkGpu::uploadTexDataOptimal(GrVkTexture* tex,
|
| - int left, int top, int width, int height,
|
| - GrPixelConfig dataConfig,
|
| - const SkTArray<GrMipLevel>& texels) {
|
| + int left, int top, int width, int height,
|
| + GrPixelConfig dataConfig,
|
| + const SkTArray<GrMipLevel>& texels) {
|
| SkASSERT(!tex->isLinearTiled());
|
| // The assumption is either that we have no mipmaps, or that our rect is the entire texture
|
| SkASSERT(1 == texels.count() ||
|
| @@ -555,10 +555,6 @@ bool GrVkGpu::uploadTexDataOptimal(GrVkTexture* tex,
|
| VK_IMAGE_LAYOUT_TRANSFER_DST_OPTIMAL,
|
| regions.count(),
|
| regions.begin());
|
| -
|
| - // Submit the current command buffer to the Queue
|
| - this->submitCommandBuffer(kSkip_SyncQueue);
|
| -
|
| transferBuffer->unref();
|
|
|
| return true;
|
| @@ -661,6 +657,16 @@ GrTexture* GrVkGpu::onCreateTexture(const GrSurfaceDesc& desc, SkBudgeted budget
|
|
|
| ////////////////////////////////////////////////////////////////////////////////
|
|
|
| +bool GrVkGpu::updateBuffer(GrVkBuffer* buffer, const void* src, size_t srcSizeInBytes) {
|
| +
|
| + // Update the buffer
|
| + fCurrentCmdBuffer->updateBuffer(this, buffer, 0, srcSizeInBytes, src);
|
| +
|
| + return true;
|
| +}
|
| +
|
| +////////////////////////////////////////////////////////////////////////////////
|
| +
|
| static GrSurfaceOrigin resolve_origin(GrSurfaceOrigin origin) {
|
| // By default, all textures in Vk use TopLeft
|
| if (kDefault_GrSurfaceOrigin == origin) {
|
|
|