aboutsummaryrefslogtreecommitdiff
path: root/layers/param_checker.cpp
diff options
context:
space:
mode:
authorCourtney Goeltzenleuchter <courtneygo@google.com>2016-01-29 15:43:49 -0700
committerTobin Ehlis <tobine@google.com>2016-02-12 10:02:34 -0700
commitefd66daaf701d889f8d579513076fc1a671aebe0 (patch)
tree8a44901f2de91f300c2fd9dedcd1bb4736999272 /layers/param_checker.cpp
parent8f84adfccd4798251e2504c91707cb41e5f15d3a (diff)
downloadusermoji-efd66daaf701d889f8d579513076fc1a671aebe0.tar.xz
param_checker: Check for pQueuePriorities
Verify that pQueuePriorities is set before using it.
Diffstat (limited to 'layers/param_checker.cpp')
-rw-r--r--layers/param_checker.cpp5
1 files changed, 4 insertions, 1 deletions
diff --git a/layers/param_checker.cpp b/layers/param_checker.cpp
index 596e609e..23f6636b 100644
--- a/layers/param_checker.cpp
+++ b/layers/param_checker.cpp
@@ -2112,7 +2112,10 @@ void validateDeviceCreateInfo(VkPhysicalDevice physicalDevice, const VkDeviceCre
"VkDeviceCreateInfo parameter, uint32_t pQueueCreateInfos[%d]->queueCount, cannot be zero.", i);
}
for (uint32_t j = 0; j < pCreateInfo->pQueueCreateInfos[i].queueCount; ++j) {
- if (pCreateInfo->pQueueCreateInfos[i].pQueuePriorities[j] < 0.f || pCreateInfo->pQueueCreateInfos[i].pQueuePriorities[j] > 1.f) {
+ if (pCreateInfo->pQueueCreateInfos[i].pQueuePriorities == nullptr) {
+ log_msg(mdd(physicalDevice), VK_DEBUG_REPORT_ERROR_BIT_EXT, (VkDebugReportObjectTypeEXT)0, 0, __LINE__, 1, "PARAMCHECK",
+ "VkDeviceCreateInfo parameter, uint32_t pQueueCreateInfos[%d]->pQueuePriorities, must not be NULL.", i);
+ } else if (pCreateInfo->pQueueCreateInfos[i].pQueuePriorities[j] < 0.f || pCreateInfo->pQueueCreateInfos[i].pQueuePriorities[j] > 1.f) {
log_msg(mdd(physicalDevice), VK_DEBUG_REPORT_ERROR_BIT_EXT, (VkDebugReportObjectTypeEXT)0, 0, __LINE__, 1, "PARAMCHECK",
"VkDeviceCreateInfo parameter, uint32_t pQueueCreateInfos[%d]->pQueuePriorities[%d], must be between 0 and 1. Actual value is %f", i, j, pCreateInfo->pQueueCreateInfos[i].pQueuePriorities[j]);
}