diff -up rpm-4.4.2.2/tools/debugedit.c.gcc43 rpm-4.4.2.2/tools/debugedit.c
--- rpm-4.4.2.2/tools/debugedit.c.gcc43 2008-01-04 08:57:09.000000000 +0200
+++ rpm-4.4.2.2/tools/debugedit.c 2008-01-04 08:58:40.000000000 +0200
@@ -1353,12 +1353,6 @@ handle_build_id (DSO *dso, Elf_Data *bui
or Elf64 object, only that we are consistent in what bits feed the
hash so it comes out the same for the same file contents. */
{
- inline void process (const void *data, size_t size);
- inline void process (const void *data, size_t size)
- {
- rpmDigestUpdate(ctx, data, size);
- }
-
union
{
GElf_Ehdr ehdr;
@@ -1387,7 +1381,7 @@ handle_build_id (DSO *dso, Elf_Data *bui
goto bad;
if (elf64_xlatetom (&x, &x, dso->ehdr.e_ident[EI_DATA]) == NULL)
goto bad;
- process (x.d_buf, x.d_size);
+ rpmDigestUpdate(ctx, x.d_buf, x.d_size);
}
x.d_type = ELF_T_SHDR;
@@ -1399,14 +1393,14 @@ handle_build_id (DSO *dso, Elf_Data *bui
u.shdr.sh_offset = 0;
if (elf64_xlatetom (&x, &x, dso->ehdr.e_ident[EI_DATA]) == NULL)
goto bad;
- process (x.d_buf, x.d_size);
+ rpmDigestUpdate(ctx, x.d_buf, x.d_size);
if (u.shdr.sh_type != SHT_NOBITS)
{
Elf_Data *d = elf_rawdata (dso->scn[i], NULL);
if (d == NULL)
goto bad;
- process (d->d_buf, d->d_size);
+ rpmDigestUpdate(ctx, x.d_buf, x.d_size);
}
}
}