aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--layers/core_validation.cpp4
-rw-r--r--layers/core_validation_types.h2
2 files changed, 2 insertions, 4 deletions
diff --git a/layers/core_validation.cpp b/layers/core_validation.cpp
index 995f5d3e..b12dc861 100644
--- a/layers/core_validation.cpp
+++ b/layers/core_validation.cpp
@@ -7723,13 +7723,11 @@ static bool CreatePassDAG(const layer_data *dev_data, const VkRenderPassCreateIn
"Dependency graph must be specified such that an earlier pass cannot depend on a later pass.");
} else if (dependency.srcSubpass == dependency.dstSubpass) {
has_self_dependency[dependency.srcSubpass] = true;
+ subpass_to_dep_index[dependency.srcSubpass] = i;
} else {
subpass_to_node[dependency.dstSubpass].prev.push_back(dependency.srcSubpass);
subpass_to_node[dependency.srcSubpass].next.push_back(dependency.dstSubpass);
}
- if (dependency.srcSubpass != VK_SUBPASS_EXTERNAL) {
- subpass_to_dep_index[dependency.srcSubpass] = i;
- }
}
return skip;
}
diff --git a/layers/core_validation_types.h b/layers/core_validation_types.h
index 7038d822..11fbd3e3 100644
--- a/layers/core_validation_types.h
+++ b/layers/core_validation_types.h
@@ -379,7 +379,7 @@ struct RENDER_PASS_STATE : public BASE_NODE {
safe_VkRenderPassCreateInfo createInfo;
std::vector<bool> hasSelfDependency;
std::vector<DAGNode> subpassToNode;
- std::vector<int32_t> subpass_to_dependency_index; // Map srcSubpass to its pDependency index (or -1 if none)
+ std::vector<int32_t> subpass_to_dependency_index; // srcSubpass to dependency index of self dep, or -1 if none
std::unordered_map<uint32_t, bool> attachment_first_read;
RENDER_PASS_STATE(VkRenderPassCreateInfo const *pCreateInfo) : createInfo(pCreateInfo) {}