mirror of
https://github.com/Ed94/raddebugger.git
synced 2026-08-06 13:58:40 +00: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)
|
coff_resource_id_compar(void *raw_a, void *raw_b)
|
||||||
{
|
{
|
||||||
int cmp;
|
int cmp;
|
||||||
COFF_ResourceID *a = raw_b;
|
COFF_ResourceID *a = raw_a;
|
||||||
COFF_ResourceID *b = raw_b;
|
COFF_ResourceID *b = raw_b;
|
||||||
if (a->type == b->type) {
|
if (a->type == b->type) {
|
||||||
switch (a->type) {
|
switch (a->type) {
|
||||||
case COFF_ResourceIDType_Null: cmp = 0; break;
|
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;
|
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;
|
default: InvalidPath; break;
|
||||||
}
|
}
|
||||||
|
|||||||
+1
-1
@@ -1555,7 +1555,7 @@ internal PE_ResourceNode *
|
|||||||
pe_resource_dir_search_node(PE_ResourceDir *dir, COFF_ResourceID id)
|
pe_resource_dir_search_node(PE_ResourceDir *dir, COFF_ResourceID id)
|
||||||
{
|
{
|
||||||
for (PE_ResourceNode *i = dir->id_list.first; i != NULL; i = i->next) {
|
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;
|
return i;
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|||||||
Reference in New Issue
Block a user