From: Nicolai Hähnle <nicolai.haeh...@amd.com> --- src/amd/vulkan/radv_image.c | 13 +++++++------ 1 file changed, 7 insertions(+), 6 deletions(-)
diff --git a/src/amd/vulkan/radv_image.c b/src/amd/vulkan/radv_image.c index e1e9d9c..c0fc896 100644 --- a/src/amd/vulkan/radv_image.c +++ b/src/amd/vulkan/radv_image.c @@ -841,28 +841,29 @@ radv_DestroyImage(VkDevice _device, VkImage _image, void radv_GetImageSubresourceLayout( VkDevice device, VkImage _image, const VkImageSubresource* pSubresource, VkSubresourceLayout* pLayout) { RADV_FROM_HANDLE(radv_image, image, _image); int level = pSubresource->mipLevel; int layer = pSubresource->arrayLayer; + struct radeon_surf *surface = &image->surface; - pLayout->offset = image->surface.level[level].offset + image->surface.level[level].slice_size * layer; - pLayout->rowPitch = image->surface.level[level].pitch_bytes; - pLayout->arrayPitch = image->surface.level[level].slice_size; - pLayout->depthPitch = image->surface.level[level].slice_size; - pLayout->size = image->surface.level[level].slice_size; + pLayout->offset = surface->level[level].offset + surface->level[level].slice_size * layer; + pLayout->rowPitch = surface->level[level].pitch_bytes; + pLayout->arrayPitch = surface->level[level].slice_size; + pLayout->depthPitch = surface->level[level].slice_size; + pLayout->size = surface->level[level].slice_size; if (image->type == VK_IMAGE_TYPE_3D) - pLayout->size *= image->surface.level[level].nblk_z; + pLayout->size *= surface->level[level].nblk_z; } VkResult radv_CreateImageView(VkDevice _device, const VkImageViewCreateInfo *pCreateInfo, const VkAllocationCallbacks *pAllocator, VkImageView *pView) { RADV_FROM_HANDLE(radv_device, device, _device); -- 2.9.3 _______________________________________________ mesa-dev mailing list mesa-dev@lists.freedesktop.org https://lists.freedesktop.org/mailman/listinfo/mesa-dev