From b2c4dce4b01e5add38e2d5b2e979fde26c99922c Mon Sep 17 00:00:00 2001 From: Ryan Fleury Date: Thu, 10 Sep 2026 09:39:13 -0700 Subject: [PATCH] fix duplicative RDI serialization in breakpad output --- src/radbin/radbin.c | 16 +++++++++++----- 1 file changed, 11 insertions(+), 5 deletions(-) diff --git a/src/radbin/radbin.c b/src/radbin/radbin.c index 43d735f2..09beb13a 100644 --- a/src/radbin/radbin.c +++ b/src/radbin/radbin.c @@ -1035,11 +1035,17 @@ rb_thread_entry_point(void *p) case OutputKind_Breakpad: { //- rjf: flatten to RDI data - String8List rdi_blobs = rdim_file_blobs_from_section_bundle(arena, serialized_section_bundle); - String8 rdi_data = str8_list_join(arena, &rdi_blobs, 0); - RDI_Parsed rdi_ = {0}; - RDI_Parsed *rdi = &rdi_; - RDI_ParseStatus rdi_status = rdi_parse(rdi_data.str, rdi_data.size, rdi); + ProfBegin("flatten to RDI data"); + RDI_Parsed *rdi = 0; + if(lane_idx() == 0) + { + String8List rdi_blobs = rdim_file_blobs_from_section_bundle(arena, serialized_section_bundle); + String8 rdi_data = str8_list_join(arena, &rdi_blobs, 0); + rdi = push_array(arena, RDI_Parsed, 1); + rdi_parse(rdi_data.str, rdi_data.size, rdi); + } + lane_sync_u64(&rdi, 0); + ProfEnd(); //- rjf: set up shared state typedef struct P2B_Shared P2B_Shared;