summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorjsjtxietian <jsjtxietian@outlook.com>2023-10-22 22:46:00 +0800
committerjsjtxietian <jsjtxietian@outlook.com>2023-10-22 23:19:00 +0800
commit5f85a042b6bd4bb6808c3aa0e626799403a0b687 (patch)
treef73c847f24754a537ff99f2ddedf194a6f8bed02
parent8c25a98fdf68dc388eddaefa188f3386236cdfe4 (diff)
downloadredot-engine-5f85a042b6bd4bb6808c3aa0e626799403a0b687.tar.gz
Prevent `_allocate_placeholders` crash if `p_version->variants` is null
-rw-r--r--servers/rendering/renderer_rd/shader_rd.cpp1
1 files changed, 1 insertions, 0 deletions
diff --git a/servers/rendering/renderer_rd/shader_rd.cpp b/servers/rendering/renderer_rd/shader_rd.cpp
index 10e37c7da8..242b0301f1 100644
--- a/servers/rendering/renderer_rd/shader_rd.cpp
+++ b/servers/rendering/renderer_rd/shader_rd.cpp
@@ -480,6 +480,7 @@ void ShaderRD::_save_to_cache(Version *p_version, int p_group) {
}
void ShaderRD::_allocate_placeholders(Version *p_version, int p_group) {
+ ERR_FAIL_NULL(p_version->variants);
for (uint32_t i = 0; i < group_to_variant_map[p_group].size(); i++) {
int variant_id = group_to_variant_map[p_group][i];
RID shader = RD::get_singleton()->shader_create_placeholder();