mirror of
https://github.com/Ed94/raddebugger.git
synced 2026-07-01 15:41:48 -07:00
bugfix resource compar
This commit is contained in:
@@ -477,12 +477,12 @@ internal int
|
||||
coff_resource_id_compar(void *raw_a, void *raw_b)
|
||||
{
|
||||
int cmp;
|
||||
COFF_ResourceID *a = raw_b;
|
||||
COFF_ResourceID *a = raw_a;
|
||||
COFF_ResourceID *b = raw_b;
|
||||
if (a->type == b->type) {
|
||||
switch (a->type) {
|
||||
case COFF_ResourceIDType_Null: cmp = 0; break;
|
||||
case COFF_ResourceIDType_Number: cmp = a->u.number < b->u.number ? -1 : a->u.number > b->u.number ? +1 : 0; break;
|
||||
case COFF_ResourceIDType_Number: cmp = MemoryCompare(&a->u.number, &b->u.number, sizeof(a->u.number)); break;
|
||||
case COFF_ResourceIDType_String: cmp = strncmp((char *)a->u.string.str, (char *)b->u.string.str, Min(a->u.string.size, b->u.string.size)); break;
|
||||
default: InvalidPath; break;
|
||||
}
|
||||
|
||||
+1
-1
@@ -1555,7 +1555,7 @@ internal PE_ResourceNode *
|
||||
pe_resource_dir_search_node(PE_ResourceDir *dir, COFF_ResourceID id)
|
||||
{
|
||||
for (PE_ResourceNode *i = dir->id_list.first; i != NULL; i = i->next) {
|
||||
if (coff_resource_id_compar(&i->data.id, &id)) {
|
||||
if (coff_resource_id_compar(&i->data.id, &id) == 0) {
|
||||
return i;
|
||||
}
|
||||
}
|
||||
|
||||
Reference in New Issue
Block a user