[Coverity] Fix some NULL dereferences that should be checked

This commit is contained in:
baldurk
2016-07-20 17:18:14 +02:00
parent a3f61d0680
commit 7638684146
3 changed files with 14 additions and 2 deletions
+1 -1
View File
@@ -6203,7 +6203,7 @@ void VulkanDebugManager::InitPostVSBuffers(uint32_t eventID)
const FetchDrawcall *drawcall = m_pDriver->GetDrawcall(eventID);
if(drawcall->numIndices == 0 || drawcall->numInstances == 0)
if(drawcall == NULL || drawcall->numIndices == 0 || drawcall->numInstances == 0)
return;
uint32_t descSet = (uint32_t)creationInfo.m_PipelineLayout[pipeInfo.layout].descSetLayouts.size();
@@ -262,6 +262,12 @@ VkResult WrappedVulkan::vkCreateInstance(const VkInstanceCreateInfo *pCreateInfo
}
RDCASSERT(layerCreateInfo);
if(layerCreateInfo == NULL)
{
RDCERR("Couldn't find loader instance create info, which is required. Incompatible loader?");
return VK_ERROR_INITIALIZATION_FAILED;
}
PFN_vkGetInstanceProcAddr gpa = layerCreateInfo->u.pLayerInfo->pfnNextGetInstanceProcAddr;
// move chain on for next layer
layerCreateInfo->u.pLayerInfo = layerCreateInfo->u.pLayerInfo->pNext;
@@ -1119,6 +1125,12 @@ VkResult WrappedVulkan::vkCreateDevice(VkPhysicalDevice physicalDevice,
}
RDCASSERT(layerCreateInfo);
if(layerCreateInfo == NULL)
{
RDCERR("Couldn't find loader device create info, which is required. Incompatible loader?");
return VK_ERROR_INITIALIZATION_FAILED;
}
PFN_vkGetDeviceProcAddr gdpa = layerCreateInfo->u.pLayerInfo->pfnNextGetDeviceProcAddr;
PFN_vkGetInstanceProcAddr gipa = layerCreateInfo->u.pLayerInfo->pfnNextGetInstanceProcAddr;
// move chain on for next layer
@@ -190,7 +190,7 @@ VkResult WrappedVulkan::vkGetPipelineCacheData(VkDevice device, VkPipelineCache
if(pDataSize && !pData)
*pDataSize = totalSize;
if(pData)
if(pDataSize && pData)
{
if(*pDataSize < totalSize)
{