diff options
-rw-r--r-- | trunk/ChangeLog | 5 | ||||
-rw-r--r-- | trunk/src/conflict.c | 10 |
2 files changed, 15 insertions, 0 deletions
diff --git a/trunk/ChangeLog b/trunk/ChangeLog index 8265782..258c8e5 100644 --- a/trunk/ChangeLog +++ b/trunk/ChangeLog @@ -1,3 +1,8 @@ +2009-07-09 Jakub Jelinek <jakub@redhat.com> + + * src/conflict.c (prelink_build_conflicts): Don't call + prelink_conflict_rel{,a} on .gnu.conflict section in executables. + 2009-06-15 Jakub Jelinek <jakub@redhat.com> * src/prelink.h (R_386_IRELATIVE, R_X86_64_IRELATIVE): Define diff --git a/trunk/src/conflict.c b/trunk/src/conflict.c index 38d0830..1a972c5 100644 --- a/trunk/src/conflict.c +++ b/trunk/src/conflict.c @@ -565,10 +565,20 @@ prelink_build_conflicts (struct prelink_info *info) switch (dso->shdr[j].sh_type) { case SHT_REL: + if (i == 0 + && strcmp (strptr (dso, dso->ehdr.e_shstrndx, + dso->shdr[j].sh_name), + ".gnu.conflict") == 0) + break; if (prelink_conflict_rel (dso, j, info)) goto error_out; break; case SHT_RELA: + if (i == 0 + && strcmp (strptr (dso, dso->ehdr.e_shstrndx, + dso->shdr[j].sh_name), + ".gnu.conflict") == 0) + break; if (prelink_conflict_rela (dso, j, info)) goto error_out; break; |