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"
|
executable: "build/raddbg.exe"
|
||||||
working_directory: "../raddebugger"
|
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
|
debug_subprocesses: 0
|
||||||
enabled: 1
|
enabled: 1
|
||||||
}
|
}
|
||||||
|
|||||||
File diff suppressed because one or more lines are too long
@@ -318,7 +318,7 @@ RD_VocabTable:
|
|||||||
'auto_load_last_project': bool,
|
'auto_load_last_project': bool,
|
||||||
|
|
||||||
//- rjf: symbol server
|
//- 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,
|
'auto_download_debug_info': bool,
|
||||||
}
|
}
|
||||||
```
|
```
|
||||||
|
|||||||
@@ -331,6 +331,7 @@ rd_setting_from_name(String8 name)
|
|||||||
CfgSeedTask panel_task = {0, &cfg_nil_node, 1};
|
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()->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_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 view_task = {&panel_task, view_cfg, 1};
|
||||||
CfgSeedTask *first_task = &view_task;
|
CfgSeedTask *first_task = &view_task;
|
||||||
CfgSeedTask *last_task = &panel_task;
|
CfgSeedTask *last_task = &panel_task;
|
||||||
@@ -11186,8 +11187,7 @@ rd_frame(void)
|
|||||||
//////////////////////////////
|
//////////////////////////////
|
||||||
//- rjf: apply debug info config trees -> loaded debug info cache
|
//- 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(rd_state->auto_download_debug_info);
|
||||||
di_set_auto_downloads(auto_download_debug_info);
|
|
||||||
ProfScope("apply debug info config trees -> loaded debug info cache")
|
ProfScope("apply debug info config trees -> loaded debug info cache")
|
||||||
{
|
{
|
||||||
U64 current_update_tick_idx = update_tick_idx();
|
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,
|
//- 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
|
// 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->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(str8_lit("use_default_stl_type_views"));
|
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(str8_lit("use_default_ue_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;
|
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;
|
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;
|
U64 cmd_count_pre_tick = rd_state->cmds[0].count;
|
||||||
B32 soft_halt_issued = d_user_state->ctrl_soft_halt_issued;
|
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
|
//- rjf: process debug engine events
|
||||||
|
|||||||
@@ -414,6 +414,7 @@ struct RD_State
|
|||||||
B32 alt_menu_bar_enabled;
|
B32 alt_menu_bar_enabled;
|
||||||
B32 use_default_stl_type_views;
|
B32 use_default_stl_type_views;
|
||||||
B32 use_default_ue_type_views;
|
B32 use_default_ue_type_views;
|
||||||
|
B32 auto_download_debug_info;
|
||||||
EV_StringFlags eval_viz_base_string_flags;
|
EV_StringFlags eval_viz_base_string_flags;
|
||||||
|
|
||||||
// rjf: animation rates
|
// 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};
|
} key = {hash, lang};
|
||||||
#pragma pack(pop)
|
#pragma pack(pop)
|
||||||
String8 key_string = str8_struct(&key);
|
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_Artifact *txt_artifact = (TXT_Artifact *)artifact.u64[0];
|
||||||
TXT_TextInfo info = {0};
|
TXT_TextInfo info = {0};
|
||||||
if(txt_artifact != 0)
|
if(txt_artifact != 0)
|
||||||
{
|
{
|
||||||
info = txt_artifact->info;
|
info = txt_artifact->info;
|
||||||
}
|
}
|
||||||
|
else if(!stale)
|
||||||
|
{
|
||||||
|
info = txt_info_nil;
|
||||||
|
}
|
||||||
return info;
|
return info;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|||||||
@@ -177,6 +177,14 @@ typedef TXT_TokenArray TXT_LangLexFunctionType(Arena *arena, U64 *bytes_processe
|
|||||||
//~ rjf: Globals
|
//~ rjf: Globals
|
||||||
|
|
||||||
read_only global TXT_ScopeNode txt_scope_node_nil = {0};
|
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
|
//~ rjf: Basic Helpers
|
||||||
|
|||||||
Reference in New Issue
Block a user