mirror of
https://github.com/Ed94/raddebugger.git
synced 2026-08-14 09:18:09 +00:00
fix nil text visualizations; fix auto-load-recent-project
This commit is contained in:
+1
-1
@@ -5,7 +5,7 @@ target:
|
||||
{
|
||||
executable: "build/raddbg.exe"
|
||||
working_directory: "../raddebugger"
|
||||
arguments: "--user:C:/devel/raddebugger/build/raddbg_test.user --project:C:/devel/raddebugger/build/raddbg_test.project"
|
||||
arguments: "--user:C:/devel/raddebugger/build/raddbg_test.user"
|
||||
debug_subprocesses: 0
|
||||
enabled: 1
|
||||
}
|
||||
|
||||
File diff suppressed because one or more lines are too long
@@ -318,7 +318,7 @@ RD_VocabTable:
|
||||
'auto_load_last_project': bool,
|
||||
|
||||
//- rjf: symbol server
|
||||
@default(0) @display_name('Auto Download Debug Info') @Description("Automatically tries to download missing debug info from symbol server(s).")
|
||||
@default(0) @display_name('Auto Download Debug Info') @description("Automatically tries to download missing debug info from symbol server(s).")
|
||||
'auto_download_debug_info': bool,
|
||||
}
|
||||
```
|
||||
|
||||
@@ -331,6 +331,7 @@ rd_setting_from_name(String8 name)
|
||||
CfgSeedTask panel_task = {0, &cfg_nil_node, 1};
|
||||
if(panel_task.cfg == &cfg_nil_node) { panel_task.cfg = cfg_node_from_id(rd_regs()->panel); }
|
||||
if(panel_task.cfg == &cfg_nil_node) { panel_task.cfg = cfg_node_from_id(rd_regs()->window); }
|
||||
if(panel_task.cfg == &cfg_nil_node) { panel_task.cfg = cfg_node_child_from_string(cfg_node_root(), s("user")); }
|
||||
CfgSeedTask view_task = {&panel_task, view_cfg, 1};
|
||||
CfgSeedTask *first_task = &view_task;
|
||||
CfgSeedTask *last_task = &panel_task;
|
||||
@@ -11186,8 +11187,7 @@ rd_frame(void)
|
||||
//////////////////////////////
|
||||
//- rjf: apply debug info config trees -> loaded debug info cache
|
||||
//
|
||||
B32 auto_download_debug_info = rd_setting_b32_from_name(s("auto_download_debug_info"));
|
||||
di_set_auto_downloads(auto_download_debug_info);
|
||||
di_set_auto_downloads(rd_state->auto_download_debug_info);
|
||||
ProfScope("apply debug info config trees -> loaded debug info cache")
|
||||
{
|
||||
U64 current_update_tick_idx = update_tick_idx();
|
||||
@@ -12757,11 +12757,12 @@ rd_frame(void)
|
||||
//- rjf: evaluate unpacked settings (must be used earlier than this point in the frame,
|
||||
// but cannot evaluate before this point, so we need to prep for next frame
|
||||
//
|
||||
rd_state->alt_menu_bar_enabled = rd_setting_b32_from_name(str8_lit("focus_menu_bar_with_alt"));
|
||||
rd_state->use_default_stl_type_views = rd_setting_b32_from_name(str8_lit("use_default_stl_type_views"));
|
||||
rd_state->use_default_ue_type_views = rd_setting_b32_from_name(str8_lit("use_default_ue_type_views"));
|
||||
rd_state->alt_menu_bar_enabled = rd_setting_b32_from_name(s("focus_menu_bar_with_alt"));
|
||||
rd_state->use_default_stl_type_views = rd_setting_b32_from_name(s("use_default_stl_type_views"));
|
||||
rd_state->use_default_ue_type_views = rd_setting_b32_from_name(s("use_default_ue_type_views"));
|
||||
rd_state->auto_download_debug_info = rd_setting_b32_from_name(s("auto_download_debug_info"));
|
||||
rd_state->eval_viz_base_string_flags = 0;
|
||||
if(rd_setting_b32_from_name(str8_lit("display_pointer_addresses_before_contents")))
|
||||
if(rd_setting_b32_from_name(s("display_pointer_addresses_before_contents")))
|
||||
{
|
||||
rd_state->eval_viz_base_string_flags |= EV_StringFlag_AddressesBeforeContent;
|
||||
}
|
||||
@@ -17346,7 +17347,7 @@ rd_frame(void)
|
||||
}
|
||||
U64 cmd_count_pre_tick = rd_state->cmds[0].count;
|
||||
B32 soft_halt_issued = d_user_state->ctrl_soft_halt_issued;
|
||||
D_EventList engine_events = d_tick(scratch.arena, &targets, &breakpoints, &path_maps, exception_code_filters, auto_download_debug_info);
|
||||
D_EventList engine_events = d_tick(scratch.arena, &targets, &breakpoints, &path_maps, exception_code_filters, rd_state->auto_download_debug_info);
|
||||
|
||||
////////////////////////////
|
||||
//- rjf: process debug engine events
|
||||
|
||||
@@ -414,6 +414,7 @@ struct RD_State
|
||||
B32 alt_menu_bar_enabled;
|
||||
B32 use_default_stl_type_views;
|
||||
B32 use_default_ue_type_views;
|
||||
B32 auto_download_debug_info;
|
||||
EV_StringFlags eval_viz_base_string_flags;
|
||||
|
||||
// rjf: animation rates
|
||||
|
||||
+6
-1
@@ -3002,13 +3002,18 @@ txt_text_info_from_hash_lang(Access *access, U128 hash, TXT_LangKind lang)
|
||||
} key = {hash, lang};
|
||||
#pragma pack(pop)
|
||||
String8 key_string = str8_struct(&key);
|
||||
AC_Artifact artifact = ac_artifact_from_key(access, key_string, txt_artifact_create, txt_artifact_destroy, 0, .flags = AC_Flag_Wide);
|
||||
B32 stale = 0;
|
||||
AC_Artifact artifact = ac_artifact_from_key(access, key_string, txt_artifact_create, txt_artifact_destroy, 0, .flags = AC_Flag_Wide, .stale_out = &stale);
|
||||
TXT_Artifact *txt_artifact = (TXT_Artifact *)artifact.u64[0];
|
||||
TXT_TextInfo info = {0};
|
||||
if(txt_artifact != 0)
|
||||
{
|
||||
info = txt_artifact->info;
|
||||
}
|
||||
else if(!stale)
|
||||
{
|
||||
info = txt_info_nil;
|
||||
}
|
||||
return info;
|
||||
}
|
||||
|
||||
|
||||
@@ -177,6 +177,14 @@ typedef TXT_TokenArray TXT_LangLexFunctionType(Arena *arena, U64 *bytes_processe
|
||||
//~ rjf: Globals
|
||||
|
||||
read_only global TXT_ScopeNode txt_scope_node_nil = {0};
|
||||
read_only global Rng1U64 txt_info_line_range_nil = {0};
|
||||
read_only global TXT_TextInfo txt_info_nil =
|
||||
{
|
||||
1,
|
||||
&txt_info_line_range_nil,
|
||||
0,
|
||||
TXT_LineEndKind_Null,
|
||||
};
|
||||
|
||||
////////////////////////////////
|
||||
//~ rjf: Basic Helpers
|
||||
|
||||
Reference in New Issue
Block a user