Skip to content

Commit c0f23c3

Browse files
committed
further tweaks to support meta cfg eval
1 parent 730e8a4 commit c0f23c3

File tree

1 file changed

+19
-6
lines changed

1 file changed

+19
-6
lines changed

src/raddbg/raddbg_core.c

Lines changed: 19 additions & 6 deletions
Original file line numberDiff line numberDiff line change
@@ -2869,7 +2869,7 @@ rd_eval_space_write(void *u, E_Space space, void *in, Rng1U64 range)
28692869
if(contains_1u64(string_range, range.min))
28702870
{
28712871
String8 pre_edit_string = push_str8_copy(scratch.arena, str8(eval_blob.str + member->off, child->first->string.size));
2872-
String8 post_edit_string = ui_push_string_replace_range(scratch.arena, pre_edit_string, r1s64(range.min-string_range.min+1, range.max-string_range.min+1), str8((U8 *)in, dim_1u64(range)));
2872+
String8 post_edit_string = ui_push_string_replace_range(scratch.arena, pre_edit_string, r1s64(range.min-string_range.min+1, range.max-string_range.min+1), str8_cstring_capped(in, (U8 *)in + dim_1u64(range)));
28732873
if(child == &rd_nil_cfg)
28742874
{
28752875
child = rd_cfg_new(cfg, child_name);
@@ -9450,7 +9450,8 @@ rd_append_value_strings_from_eval(Arena *arena, EV_StringFlags flags, U32 defaul
94509450
}
94519451
}
94529452
if(eval.space.kind == RD_EvalSpaceKind_MetaEntity ||
9453-
eval.space.kind == RD_EvalSpaceKind_MetaCtrlEntity)
9453+
eval.space.kind == RD_EvalSpaceKind_MetaCtrlEntity ||
9454+
eval.space.kind == RD_EvalSpaceKind_MetaCfg)
94549455
{
94559456
E_TypeKind kind = e_type_kind_from_key(eval.type_key);
94569457
if(kind != E_TypeKind_Ptr)
@@ -9548,9 +9549,15 @@ rd_append_value_strings_from_eval(Arena *arena, EV_StringFlags flags, U32 defaul
95489549
String8 string_escaped = ev_escaped_from_raw_string(arena, string);
95499550
space_taken += fnt_dim_from_tag_size_string(font, font_size, 0, 0, string_escaped).x;
95509551
space_taken += 2*fnt_dim_from_tag_size_string(font, font_size, 0, 0, str8_lit("\"")).x;
9551-
str8_list_push(arena, out, str8_lit("\""));
9552+
if(!no_addr || depth > 0)
9553+
{
9554+
str8_list_push(arena, out, str8_lit("\""));
9555+
}
95529556
str8_list_push(arena, out, string_escaped);
9553-
str8_list_push(arena, out, str8_lit("\""));
9557+
if(!no_addr || depth > 0)
9558+
{
9559+
str8_list_push(arena, out, str8_lit("\""));
9560+
}
95549561
}
95559562

95569563
// rjf: special case: push strings for symbols
@@ -9674,9 +9681,15 @@ rd_append_value_strings_from_eval(Arena *arena, EV_StringFlags flags, U32 defaul
96749681
String8 string_escaped = ev_escaped_from_raw_string(arena, string);
96759682
space_taken += fnt_dim_from_tag_size_string(font, font_size, 0, 0, string_escaped).x;
96769683
space_taken += 2*fnt_dim_from_tag_size_string(font, font_size, 0, 0, str8_lit("\"")).x;
9677-
str8_list_push(arena, out, str8_lit("\""));
9684+
if(!no_addr || depth > 0)
9685+
{
9686+
str8_list_push(arena, out, str8_lit("\""));
9687+
}
96789688
str8_list_push(arena, out, string_escaped);
9679-
str8_list_push(arena, out, str8_lit("\""));
9689+
if(!no_addr || depth > 0)
9690+
{
9691+
str8_list_push(arena, out, str8_lit("\""));
9692+
}
96809693
}
96819694

96829695
// rjf: descend in all other cases

0 commit comments

Comments
 (0)