summaryrefslogtreecommitdiffstats
path: root/servers/rendering/rendering_server_canvas.cpp
diff options
context:
space:
mode:
authorRémi Verschelde <rverschelde@gmail.com>2020-09-07 13:20:35 +0200
committerGitHub <noreply@github.com>2020-09-07 13:20:35 +0200
commitbc23899fb44a91fca2b70315fe77fc5ae704586b (patch)
treeb469e66680aad99ff3a1396918919cef056d406d /servers/rendering/rendering_server_canvas.cpp
parentb4a831b42e1c79b0edb729174564289aaa3e4dd5 (diff)
parent08bedf68ff053cfb2434cc7ead4b28433c94c2c5 (diff)
downloadredot-engine-bc23899fb44a91fca2b70315fe77fc5ae704586b.tar.gz
Merge pull request #41845 from madmiraal/clarify-comparison
Clarify comparison when enabling or disabling canvas_item copy_back_buffer buffer.
Diffstat (limited to 'servers/rendering/rendering_server_canvas.cpp')
-rw-r--r--servers/rendering/rendering_server_canvas.cpp13
1 files changed, 6 insertions, 7 deletions
diff --git a/servers/rendering/rendering_server_canvas.cpp b/servers/rendering/rendering_server_canvas.cpp
index 5c0741bb3b..07eabfd430 100644
--- a/servers/rendering/rendering_server_canvas.cpp
+++ b/servers/rendering/rendering_server_canvas.cpp
@@ -900,13 +900,12 @@ void RenderingServerCanvas::canvas_item_attach_skeleton(RID p_item, RID p_skelet
void RenderingServerCanvas::canvas_item_set_copy_to_backbuffer(RID p_item, bool p_enable, const Rect2 &p_rect) {
Item *canvas_item = canvas_item_owner.getornull(p_item);
ERR_FAIL_COND(!canvas_item);
- if (bool(canvas_item->copy_back_buffer != nullptr) != p_enable) {
- if (p_enable) {
- canvas_item->copy_back_buffer = memnew(RasterizerCanvas::Item::CopyBackBuffer);
- } else {
- memdelete(canvas_item->copy_back_buffer);
- canvas_item->copy_back_buffer = nullptr;
- }
+ if (p_enable && (canvas_item->copy_back_buffer == nullptr)) {
+ canvas_item->copy_back_buffer = memnew(RasterizerCanvas::Item::CopyBackBuffer);
+ }
+ if (!p_enable && (canvas_item->copy_back_buffer != nullptr)) {
+ memdelete(canvas_item->copy_back_buffer);
+ canvas_item->copy_back_buffer = nullptr;
}
if (p_enable) {