diff options
author | Ulrich Drepper <drepper@redhat.com> | 2009-09-28 03:19:58 -0700 |
---|---|---|
committer | Ulrich Drepper <drepper@redhat.com> | 2009-09-28 03:19:58 -0700 |
commit | 4fd894620f22dc189d3f8339e39c630c4d05421b (patch) | |
tree | 23ec71ebe63281d73d43f225bb517280138e5543 | |
parent | 0d1804061a2c27ffe511a5f9df572ad9748d8219 (diff) | |
download | glibc-4fd894620f22dc189d3f8339e39c630c4d05421b.tar.gz glibc-4fd894620f22dc189d3f8339e39c630c4d05421b.tar.xz glibc-4fd894620f22dc189d3f8339e39c630c4d05421b.zip |
Fix missing reloc dependency
When DL_LOOKUP_ADD_DEPENDENCY was introduced a few callers of _dl_lookup_versioned_symbol were not properly adjusted. One of them survived until now.
-rw-r--r-- | ChangeLog | 5 | ||||
-rw-r--r-- | elf/dl-reloc.c | 9 |
2 files changed, 8 insertions, 6 deletions
diff --git a/ChangeLog b/ChangeLog index 5dcdbfcf01..db2c0a1ff9 100644 --- a/ChangeLog +++ b/ChangeLog @@ -1,3 +1,8 @@ +2009-09-25 Andreas Schwab <schwab@redhat.com> + + * elf/dl-reloc.c (RESOLVE_MAP): Always pass + DL_LOOKUP_ADD_DEPENDENCY to _dl_lookup_symbol_x. + 2009-09-28 Samuel Thibault <samuel.thibault@ens-lyon.org> * bits/termios.h [__USE_UNIX98] (IXANY): Define macro. diff --git a/elf/dl-reloc.c b/elf/dl-reloc.c index 680caadd65..6c0069147d 100644 --- a/elf/dl-reloc.c +++ b/elf/dl-reloc.c @@ -254,14 +254,11 @@ _dl_relocate_object (struct link_map *l, struct r_scope_elem *scope[], l->l_lookup_cache.type_class = _tc; \ l->l_lookup_cache.sym = (*ref); \ const struct r_found_version *v = NULL; \ - int flags = DL_LOOKUP_ADD_DEPENDENCY; \ if ((version) != NULL && (version)->hash != 0) \ - { \ - v = (version); \ - flags = 0; \ - } \ + v = (version); \ _lr = _dl_lookup_symbol_x (strtab + (*ref)->st_name, l, (ref), \ - scope, v, _tc, flags, NULL); \ + scope, v, _tc, \ + DL_LOOKUP_ADD_DEPENDENCY, NULL); \ l->l_lookup_cache.ret = (*ref); \ l->l_lookup_cache.value = _lr; })) \ : l) |