From f7dd8f85fce42b3f4b0bdf29118c9b409aee97a0 Mon Sep 17 00:00:00 2001 From: Dave Houlton Date: Tue, 28 Feb 2017 13:16:02 -0700 Subject: layers: Add VU 01185 and a test Added check for valid usage 01185. Added test CopyImageSampleCountMismatch() to verify the check. Change-Id: I51e76e0334bd4f1c0fe564f241646fc8b788da1e --- layers/buffer_validation.cpp | 8 ++++++++ 1 file changed, 8 insertions(+) (limited to 'layers/buffer_validation.cpp') diff --git a/layers/buffer_validation.cpp b/layers/buffer_validation.cpp index 32c6d637..0bafc23c 100644 --- a/layers/buffer_validation.cpp +++ b/layers/buffer_validation.cpp @@ -1443,6 +1443,14 @@ bool PreCallValidateCmdCopyImage(layer_data *device_data, GLOBAL_CB_NODE *cb_nod } } + // Source and dest image sample counts must match + if (src_image_state->createInfo.samples != dst_image_state->createInfo.samples) { + char const str[] = "vkCmdCopyImage() called on image pair with non-identical sample counts."; + skip |= log_msg(report_data, VK_DEBUG_REPORT_ERROR_BIT_EXT, VK_DEBUG_REPORT_OBJECT_TYPE_COMMAND_BUFFER_EXT, + reinterpret_cast(command_buffer), __LINE__, VALIDATION_ERROR_01185, "IMAGE", "%s %s", str, + validation_error_map[VALIDATION_ERROR_01185]); + } + skip |= ValidateMemoryIsBoundToImage(device_data, src_image_state, "vkCmdCopyImage()", VALIDATION_ERROR_02533); skip |= ValidateMemoryIsBoundToImage(device_data, dst_image_state, "vkCmdCopyImage()", VALIDATION_ERROR_02534); // Validate that SRC & DST images have correct usage flags set -- cgit v1.2.3