diff options
author | Rémi Verschelde <rverschelde@gmail.com> | 2023-01-31 10:54:02 +0100 |
---|---|---|
committer | Rémi Verschelde <rverschelde@gmail.com> | 2023-01-31 10:54:02 +0100 |
commit | c24e0065b256351fff13f486938c77f2c7cedd9c (patch) | |
tree | 1f4caf429630402580b097db4681ff5299b2717d /servers/rendering/renderer_rd/renderer_canvas_render_rd.cpp | |
parent | af1dfa1452365be036ee6a7fcff172e130e3f882 (diff) | |
parent | cfd5fe0f29fcc06df81bfe764b072b8463aac969 (diff) | |
download | redot-engine-c24e0065b256351fff13f486938c77f2c7cedd9c.tar.gz |
Merge pull request #72433 from clayjohn/Pointlight2D-crash
Avoid crash when CanvasTexture used with light decal atlas
Diffstat (limited to 'servers/rendering/renderer_rd/renderer_canvas_render_rd.cpp')
-rw-r--r-- | servers/rendering/renderer_rd/renderer_canvas_render_rd.cpp | 3 |
1 files changed, 3 insertions, 0 deletions
diff --git a/servers/rendering/renderer_rd/renderer_canvas_render_rd.cpp b/servers/rendering/renderer_rd/renderer_canvas_render_rd.cpp index 0f4fa1b9c4..bd8c11186e 100644 --- a/servers/rendering/renderer_rd/renderer_canvas_render_rd.cpp +++ b/servers/rendering/renderer_rd/renderer_canvas_render_rd.cpp @@ -1550,6 +1550,9 @@ void RendererCanvasRenderRD::light_set_texture(RID p_rid, RID p_texture) { if (cl->texture == p_texture) { return; } + + ERR_FAIL_COND(p_texture.is_valid() && !texture_storage->owns_texture(p_texture)); + if (cl->texture.is_valid()) { texture_storage->texture_remove_from_decal_atlas(cl->texture); } |