diff options
author | Ulrich Drepper <drepper@redhat.com> | 2003-01-27 22:08:50 +0000 |
---|---|---|
committer | Ulrich Drepper <drepper@redhat.com> | 2003-01-27 22:08:50 +0000 |
commit | b7e033f7be24bc4f2019f949b74f99ed862810d3 (patch) | |
tree | 042cdd8e1f23230066092687f44f5d87d60d8004 | |
parent | 62f29da7cbc527e8f8dda4f5101e6ac504c98505 (diff) | |
download | glibc-b7e033f7be24bc4f2019f949b74f99ed862810d3.tar.gz glibc-b7e033f7be24bc4f2019f949b74f99ed862810d3.tar.xz glibc-b7e033f7be24bc4f2019f949b74f99ed862810d3.zip |
Update.
2003-01-27 Ulrich Drepper <drepper@redhat.com> * elf/dl-reloc.c (allocate_static_tls): Avoid arithmetic wrap-around in test.
-rw-r--r-- | ChangeLog | 5 | ||||
-rw-r--r-- | elf/dl-reloc.c | 8 |
2 files changed, 9 insertions, 4 deletions
diff --git a/ChangeLog b/ChangeLog index 37cebd01be..7991f98b50 100644 --- a/ChangeLog +++ b/ChangeLog @@ -1,3 +1,8 @@ +2003-01-27 Ulrich Drepper <drepper@redhat.com> + + * elf/dl-reloc.c (allocate_static_tls): Avoid arithmetic + wrap-around in test. + 2003-01-26 Andreas Schwab <schwab@suse.de> * sysdeps/wordsize-32/divdi3.c: Export the functions only as diff --git a/elf/dl-reloc.c b/elf/dl-reloc.c index 37c4be2049..82e205a6f7 100644 --- a/elf/dl-reloc.c +++ b/elf/dl-reloc.c @@ -1,5 +1,5 @@ /* Relocate a shared object and resolve its references to other loaded objects. - Copyright (C) 1995,96,97,98,99,2000,2001,2002 Free Software Foundation, Inc. + Copyright (C) 1995-2002, 2003 Free Software Foundation, Inc. This file is part of the GNU C Library. The GNU C Library is free software; you can redistribute it and/or @@ -45,15 +45,15 @@ static bool allocate_static_tls (struct link_map *map) { size_t offset = roundup (GL(dl_tls_static_used), map->l_tls_align); - if (offset + map->l_tls_blocksize > (GL(dl_tls_static_size) + if (offset + map->l_tls_blocksize # if TLS_TCB_AT_TP - - TLS_TCB_SIZE + + TLS_TCB_SIZE # elif TLS_DTV_AT_TP /* dl_tls_static_used includes the TCB at the beginning. */ # else # error "Either TLS_TCB_AT_TP or TLS_DTV_AT_TP must be defined" # endif - )) + > GL(dl_tls_static_size)) return false; map->l_tls_offset = offset; GL(dl_tls_static_used) = offset + map->l_tls_blocksize; |