ignored. Necessary so that we don't
double-report invalid & missing
relocation. */
- size_t index; /* Original index (before sorting). */
};
struct relocation_data
{
struct where where
= WHERE (reloc->type == SHT_REL ? sec_rel : sec_rela, NULL);
- where_reset_1 (&where, reloc->index);
+ where_reset_1 (&where, reloc->rel[reloc->index].offset);
where.ref = ref;
return where;
}
where_reset_1 (&where, i);
REALLOC (&secdata->rel, rel);
- struct relocation *cur = secdata->rel.rel + secdata->rel.size;
+ struct relocation *cur = secdata->rel.rel + secdata->rel.size++;
memset (cur, 0, sizeof (*cur));
- cur->index = secdata->rel.size++;
-
GElf_Rela rela_mem, *rela
= get_rel_or_rela (reldata, i, &rela_mem, secdata->rel.type);
if (rela == NULL)