Welcome to mirror list, hosted at ThFree Co, Russian Federation.

git.blender.org/blender.git - Unnamed repository; edit this file 'description' to name the repository.
summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorClément Foucault <foucault.clem@gmail.com>2022-06-06 17:57:50 +0300
committerClément Foucault <foucault.clem@gmail.com>2022-06-07 11:48:13 +0300
commit58d350b4892dcaabfcd730fbc0d8d90b90b55ccc (patch)
tree64aef575e2ef6db60f180cd1e638fdd7549694e7
parent128aa7f3b09802f325c151a921ac50c01c04b6e1 (diff)
GPUMaterial: Make compilation fail when reusing failed `GPUPass`
This avoid leaving a `GPUMaterial` in a `GPU_MAT_QUEUED` state which would block rendering. Fix T98603: Hang when saving project in material preview mode Maniphest Tasks: T98603 Differential Revision: https://developer.blender.org/D15135
-rw-r--r--source/blender/gpu/intern/gpu_material.c3
1 files changed, 3 insertions, 0 deletions
diff --git a/source/blender/gpu/intern/gpu_material.c b/source/blender/gpu/intern/gpu_material.c
index 7ec6ee5183a..c77eea28da9 100644
--- a/source/blender/gpu/intern/gpu_material.c
+++ b/source/blender/gpu/intern/gpu_material.c
@@ -750,6 +750,9 @@ void GPU_material_compile(GPUMaterial *mat)
mat->status = GPU_MAT_SUCCESS;
gpu_node_graph_free_nodes(&mat->graph);
}
+ else {
+ mat->status = GPU_MAT_FAILED;
+ }
}
else {
mat->status = GPU_MAT_FAILED;