diff options
author | kib <kib@FreeBSD.org> | 2011-09-15 11:50:09 +0000 |
---|---|---|
committer | kib <kib@FreeBSD.org> | 2011-09-15 11:50:09 +0000 |
commit | 75884f107c301faf9e92c2a0c6700fd31cba7f9c (patch) | |
tree | fd3b865847a9c54261540527e3282ce0d7b14f37 /libexec | |
parent | fdfe4f8a66982f100ee97fd61d73bd400cac90ce (diff) | |
download | FreeBSD-src-75884f107c301faf9e92c2a0c6700fd31cba7f9c.zip FreeBSD-src-75884f107c301faf9e92c2a0c6700fd31cba7f9c.tar.gz |
Use the proper dynamic tls block to calculate the tls variable address
in case tls data generation was updated.
PR: misc/160721
Submitted by: "Thinker K.F. Li" <thinker codemud net>
Tested by: flo
Approved by: re (bz)
MFC after: 1 week
Diffstat (limited to 'libexec')
-rw-r--r-- | libexec/rtld-elf/rtld.c | 2 |
1 files changed, 1 insertions, 1 deletions
diff --git a/libexec/rtld-elf/rtld.c b/libexec/rtld-elf/rtld.c index 874f4bc..65eadb5 100644 --- a/libexec/rtld-elf/rtld.c +++ b/libexec/rtld-elf/rtld.c @@ -3370,7 +3370,7 @@ tls_get_addr_common(Elf_Addr** dtvp, int index, size_t offset) newdtv[1] = tls_max_index; free(dtv); lock_release(rtld_bind_lock, &lockstate); - *dtvp = newdtv; + dtv = *dtvp = newdtv; } /* Dynamically allocate module TLS if necessary */ |