mirror of
https://github.com/Ed94/raddebugger.git
synced 2026-07-25 08:57:51 +00:00
minor fixes
This commit is contained in:
+16
-12
@@ -232,9 +232,9 @@ msf_raw_stream_table_from_data(Arena *arena, String8 msf_data)
|
||||
}
|
||||
|
||||
internal String8
|
||||
msf_data_from_stream_index(Arena *arena, String8 msf_data, MSF_RawStreamTable *st, U64 stream_idx)
|
||||
msf_data_from_stream_number(Arena *arena, String8 msf_data, MSF_RawStreamTable *st, MSF_StreamNumber sn)
|
||||
{
|
||||
MSF_RawStream stream = st->streams[stream_idx];
|
||||
MSF_RawStream stream = st->streams[sn];
|
||||
|
||||
U8 *stream_buf = push_array_no_zero(arena, U8, stream.size);
|
||||
U8 *stream_out_ptr = stream_buf;
|
||||
@@ -277,17 +277,21 @@ msf_parsed_from_data(Arena *arena, String8 msf_data)
|
||||
{
|
||||
Temp scratch = scratch_begin(&arena, 1);
|
||||
|
||||
MSF_RawStreamTable *st = msf_raw_stream_table_from_data(scratch.arena, msf_data);
|
||||
String8 *streams = push_array_no_zero(arena, String8, st->stream_count);
|
||||
for (U64 stream_idx = 0; stream_idx < st->stream_count; ++stream_idx) {
|
||||
streams[stream_idx] = msf_data_from_stream_index(arena, msf_data, st, stream_idx);
|
||||
}
|
||||
MSF_Parsed *result = 0;
|
||||
|
||||
MSF_Parsed *result = push_array_no_zero(arena, MSF_Parsed, 1);
|
||||
result->streams = streams;
|
||||
result->stream_count = st->stream_count;
|
||||
result->block_size = st->page_size;
|
||||
result->block_count = st->total_page_count;
|
||||
MSF_RawStreamTable *st = msf_raw_stream_table_from_data(scratch.arena, msf_data);
|
||||
if (st) {
|
||||
String8 *streams = push_array_no_zero(arena, String8, st->stream_count);
|
||||
for (MSF_StreamNumber sn = 0; sn < st->stream_count; ++sn) {
|
||||
streams[sn] = msf_data_from_stream_number(arena, msf_data, st, sn);
|
||||
}
|
||||
|
||||
result = push_array_no_zero(arena, MSF_Parsed, 1);
|
||||
result->streams = streams;
|
||||
result->stream_count = st->stream_count;
|
||||
result->block_size = st->page_size;
|
||||
result->block_count = st->total_page_count;
|
||||
}
|
||||
|
||||
scratch_end(scratch);
|
||||
return result;
|
||||
|
||||
+1
-3
@@ -37,13 +37,11 @@ struct MSF_Parsed
|
||||
U64 block_count;
|
||||
};
|
||||
|
||||
#define MSF_MAX_MAGIC_SIZE Min(sizeof(msf_msf20_magic), sizeof(msf_msf70_magic))
|
||||
|
||||
////////////////////////////////
|
||||
//~ rjf: MSF Parser Functions
|
||||
|
||||
internal MSF_RawStreamTable* msf_raw_stream_table_from_data(Arena *arena, String8 msf_data);
|
||||
internal String8 msf_data_from_stream_index(Arena *arena, String8 msf_data, MSF_RawStreamTable *st, U64 stream_idx);
|
||||
internal String8 msf_data_from_stream_number(Arena *arena, String8 msf_data, MSF_RawStreamTable *st, MSF_StreamNumber sn);
|
||||
internal MSF_Parsed* msf_parsed_from_data(Arena *arena, String8 msf_data);
|
||||
internal String8 msf_data_from_stream(MSF_Parsed *msf, MSF_StreamNumber sn);
|
||||
|
||||
|
||||
@@ -5023,15 +5023,15 @@ p2r_has_symbol_ref(String8 msf_data, String8List symbol_list, MSF_RawStreamTable
|
||||
|
||||
B32 has_ref = 0;
|
||||
|
||||
String8 dbi_data = msf_data_from_stream_index(scratch.arena, msf_data, st, PDB_FixedStream_Dbi);
|
||||
String8 dbi_data = msf_data_from_stream_number(scratch.arena, msf_data, st, PDB_FixedStream_Dbi);
|
||||
PDB_DbiParsed *dbi = pdb_dbi_from_data(scratch.arena, dbi_data);
|
||||
if(dbi)
|
||||
{
|
||||
String8 gsi_data = msf_data_from_stream_index(scratch.arena, msf_data, st, dbi->gsi_sn);
|
||||
String8 gsi_data = msf_data_from_stream_number(scratch.arena, msf_data, st, dbi->gsi_sn);
|
||||
PDB_GsiParsed *gsi_parsed = pdb_gsi_from_data(scratch.arena, gsi_data);
|
||||
if(gsi_parsed)
|
||||
{
|
||||
String8 symbol_data = msf_data_from_stream_index(scratch.arena, msf_data, st, dbi->sym_sn);
|
||||
String8 symbol_data = msf_data_from_stream_number(scratch.arena, msf_data, st, dbi->sym_sn);
|
||||
|
||||
for(String8Node *symbol_n = symbol_list.first; symbol_n != 0; symbol_n = symbol_n->next)
|
||||
{
|
||||
@@ -5056,7 +5056,7 @@ p2r_has_file_ref(String8 msf_data, String8List file_list, MSF_RawStreamTable *st
|
||||
|
||||
B32 has_ref = 0;
|
||||
|
||||
String8 info_data = msf_data_from_stream_index(scratch.arena, msf_data, st, PDB_FixedStream_Info);
|
||||
String8 info_data = msf_data_from_stream_number(scratch.arena, msf_data, st, PDB_FixedStream_Info);
|
||||
PDB_Info *info = pdb_info_from_data(scratch.arena, info_data);
|
||||
if(info)
|
||||
{
|
||||
@@ -5064,7 +5064,7 @@ p2r_has_file_ref(String8 msf_data, String8List file_list, MSF_RawStreamTable *st
|
||||
if(named_streams)
|
||||
{
|
||||
MSF_StreamNumber strtbl_sn = named_streams->sn[PDB_NamedStream_StringTable];
|
||||
String8 strtbl_data = msf_data_from_stream_index(scratch.arena, msf_data, st, strtbl_sn);
|
||||
String8 strtbl_data = msf_data_from_stream_number(scratch.arena, msf_data, st, strtbl_sn);
|
||||
PDB_Strtbl *strtbl = pdb_strtbl_from_data(scratch.arena, strtbl_data);
|
||||
if(strtbl)
|
||||
{
|
||||
|
||||
Reference in New Issue
Block a user