From 16ac79ca946f05fa5bf25b6ae99f8ae5487f7503 Mon Sep 17 00:00:00 2001 From: Ulrich Drepper Date: Thu, 20 Jan 2000 08:02:49 +0000 Subject: [PATCH] Update. * sysdeps/ieee754/ldbl-96/s_modfl.c: Correct handling of arguments with exponent >31 and < 63 (PR libc/1548). --- ChangeLog | 3 +++ linuxthreads_db/ChangeLog | 4 ++++ linuxthreads_db/td_thr_getgregs.c | 4 ++-- sysdeps/ieee754/ldbl-96/s_modfl.c | 2 +- 4 files changed, 10 insertions(+), 3 deletions(-) diff --git a/ChangeLog b/ChangeLog index 96643d61ab..1878bae26b 100644 --- a/ChangeLog +++ b/ChangeLog @@ -1,5 +1,8 @@ 2000-01-19 Ulrich Drepper + * sysdeps/ieee754/ldbl-96/s_modfl.c: Correct handling of arguments + with exponent >31 and < 63 (PR libc/1548). + * locale/programs/ld-collate.c (output_weightwc): Return index measured in words, not bytes. Don't write out words for ignored characters. diff --git a/linuxthreads_db/ChangeLog b/linuxthreads_db/ChangeLog index feb8b823c0..72f8fc466e 100644 --- a/linuxthreads_db/ChangeLog +++ b/linuxthreads_db/ChangeLog @@ -1,3 +1,7 @@ +2000-01-19 Ulrich Drepper + + * td_thr_getgregs.c: Correct size parameter of memset call. + 1999-12-02 Ulrich Drepper * proc_service.h: Fix typos in last added declaractions. diff --git a/linuxthreads_db/td_thr_getgregs.c b/linuxthreads_db/td_thr_getgregs.c index 549c7d8b83..c485686afd 100644 --- a/linuxthreads_db/td_thr_getgregs.c +++ b/linuxthreads_db/td_thr_getgregs.c @@ -1,5 +1,5 @@ /* Get a thread's general register set. - Copyright (C) 1999 Free Software Foundation, Inc. + Copyright (C) 1999, 2000 Free Software Foundation, Inc. This file is part of the GNU C Library. Contributed by Ulrich Drepper , 1999. @@ -35,7 +35,7 @@ td_thr_getgregs (const td_thrhandle_t *th, prgregset_t gregs) /* If the thread already terminated we return all zeroes. */ if (pds.p_terminated) - memset (gregs, '\0', sizeof (gregs)); + memset (gregs, '\0', sizeof (prgrepset_t)); /* Otherwise get the register content through the callback. */ else if (ps_lgetregs (th->th_ta_p->ph, pds.p_pid, gregs) != PS_OK) return TD_ERR; diff --git a/sysdeps/ieee754/ldbl-96/s_modfl.c b/sysdeps/ieee754/ldbl-96/s_modfl.c index fb1b3acf30..99c0752efa 100644 --- a/sysdeps/ieee754/ldbl-96/s_modfl.c +++ b/sysdeps/ieee754/ldbl-96/s_modfl.c @@ -71,7 +71,7 @@ static long double one = 1.0; SET_LDOUBLE_WORDS(x,se&0x8000,0,0); /* return +-0 */ return x; } else { /* fraction part in low x */ - i = ((u_int32_t)(0xffffffff))>>(j0-32); + i = ((u_int32_t)(0x7fffffff))>>(j0-32); if((i1&i)==0) { /* x is integral */ *iptr = x; SET_LDOUBLE_WORDS(x,se&0x8000,0,0); /* return +-0 */