diff options
author | Clément Foucault <foucault.clem@gmail.com> | 2022-06-06 17:57:50 +0300 |
---|---|---|
committer | Clément Foucault <foucault.clem@gmail.com> | 2022-06-07 11:48:13 +0300 |
commit | 58d350b4892dcaabfcd730fbc0d8d90b90b55ccc (patch) | |
tree | 64aef575e2ef6db60f180cd1e638fdd7549694e7 /source/blender/gpu/intern/gpu_material.c | |
parent | 128aa7f3b09802f325c151a921ac50c01c04b6e1 (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
Diffstat (limited to 'source/blender/gpu/intern/gpu_material.c')
-rw-r--r-- | source/blender/gpu/intern/gpu_material.c | 3 |
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; |