summaryrefslogtreecommitdiffstats
path: root/servers/rendering/rendering_device_graph.h
diff options
context:
space:
mode:
authorMatias N. Goldberg <dark_sylinc@yahoo.com.ar>2024-10-21 15:35:22 -0300
committerMatias N. Goldberg <dark_sylinc@yahoo.com.ar>2024-10-22 22:08:46 -0300
commit668c9b74e24dd52719b06b8f3a8b7d76691526f8 (patch)
tree873690b3a09084272cd58e6b83c2574435f7ae4a /servers/rendering/rendering_device_graph.h
parent533c616cb86ff7bb940d58ffbbcc1a3eca0aa33d (diff)
downloadredot-engine-668c9b74e24dd52719b06b8f3a8b7d76691526f8.tar.gz
Fix race conditions in breadcrumbs
Adds "--accurate-breadcrumbs" CLI command Additionally, leave out breadcrumbs code in non-debug, non-dev builds. Fix regression introduced in #98388 where command_insert_breadcrumb() is called even in non-debug builds. Fixes #98338
Diffstat (limited to 'servers/rendering/rendering_device_graph.h')
-rw-r--r--servers/rendering/rendering_device_graph.h6
1 files changed, 6 insertions, 0 deletions
diff --git a/servers/rendering/rendering_device_graph.h b/servers/rendering/rendering_device_graph.h
index 0534d4ee1e..89eb44494b 100644
--- a/servers/rendering/rendering_device_graph.h
+++ b/servers/rendering/rendering_device_graph.h
@@ -221,14 +221,18 @@ private:
};
struct ComputeInstructionList : InstructionList {
+#if defined(DEBUG_ENABLED) || defined(DEV_ENABLED)
uint32_t breadcrumb;
+#endif
};
struct DrawInstructionList : InstructionList {
RDD::RenderPassID render_pass;
RDD::FramebufferID framebuffer;
Rect2i region;
+#if defined(DEBUG_ENABLED) || defined(DEV_ENABLED)
uint32_t breadcrumb;
+#endif
LocalVector<RDD::RenderPassClearValue> clear_values;
};
@@ -317,7 +321,9 @@ private:
RDD::FramebufferID framebuffer;
RDD::CommandBufferType command_buffer_type;
Rect2i region;
+#if defined(DEBUG_ENABLED) || defined(DEV_ENABLED)
uint32_t breadcrumb = 0;
+#endif
uint32_t clear_values_count = 0;
_FORCE_INLINE_ RDD::RenderPassClearValue *clear_values() {