mirror of
https://github.com/Ed94/raddebugger.git
synced 2026-10-07 00:15:46 +00:00
sort resource pointers
This commit is contained in:
+24
@@ -1712,6 +1712,30 @@ pe_make_manifest_resource(Arena *arena, U32 resource_id, String8 manifest_data)
|
||||
return res;
|
||||
}
|
||||
|
||||
internal PE_ResourcePtrArray
|
||||
pe_resource_ptr_from_array(Arena *arena, PE_ResourceArray arr)
|
||||
{
|
||||
PE_ResourcePtrArray result = {0};
|
||||
result.count = arr.count;
|
||||
result.v = push_array(arena, PE_Resource *, arr.count);
|
||||
for EachIndex(i, arr.count) {
|
||||
result.v[i] = &arr.v[i];
|
||||
}
|
||||
return result;
|
||||
}
|
||||
|
||||
internal PE_ResourceArray
|
||||
pe_resource_from_ptr_array(Arena *arena, PE_ResourcePtrArray arr)
|
||||
{
|
||||
PE_ResourceArray result = {0};
|
||||
result.count = arr.count;
|
||||
result.v = push_array(arena, PE_Resource, arr.count);
|
||||
for EachIndex(i, arr.count) {
|
||||
result.v[i] = *arr.v[i];
|
||||
}
|
||||
return result;
|
||||
}
|
||||
|
||||
////////////////////////////////
|
||||
//~ Debug Directory
|
||||
|
||||
|
||||
+10
@@ -867,6 +867,13 @@ struct PE_ResourceArray
|
||||
U64 count;
|
||||
};
|
||||
|
||||
typedef struct PE_ResourcePtrArray PE_ResourcePtrArray;
|
||||
struct PE_ResourcePtrArray
|
||||
{
|
||||
PE_Resource **v;
|
||||
U64 count;
|
||||
};
|
||||
|
||||
typedef struct PE_ResourceDir PE_ResourceDir;
|
||||
struct PE_ResourceDir
|
||||
{
|
||||
@@ -1097,6 +1104,9 @@ internal PE_ResourceDir * pe_resource_table_from_directory_data(Arena *arena, S
|
||||
|
||||
internal String8 pe_make_manifest_resource(Arena *arena, U32 resource_id, String8 manifest_data);
|
||||
|
||||
internal PE_ResourcePtrArray pe_resource_ptr_from_array(Arena *arena, PE_ResourceArray arr);
|
||||
internal PE_ResourceArray pe_resource_from_ptr_array(Arena *arena, PE_ResourcePtrArray arr);
|
||||
|
||||
////////////////////////////////
|
||||
//~ Debug Directory
|
||||
|
||||
|
||||
Reference in New Issue
Block a user