Update.
authorUlrich Drepper <drepper@redhat.com>
Thu, 20 Jan 2000 08:02:49 +0000 (08:02 +0000)
committerUlrich Drepper <drepper@redhat.com>
Thu, 20 Jan 2000 08:02:49 +0000 (08:02 +0000)
* sysdeps/ieee754/ldbl-96/s_modfl.c: Correct handling of arguments
with exponent >31 and < 63 (PR libc/1548).

ChangeLog
linuxthreads_db/ChangeLog
linuxthreads_db/td_thr_getgregs.c
sysdeps/ieee754/ldbl-96/s_modfl.c

index 96643d61ab01eb84a58f831c2b719abaa456ed61..1878bae26b51515c76d1f3e8f301363ef39d461e 100644 (file)
--- a/ChangeLog
+++ b/ChangeLog
@@ -1,5 +1,8 @@
 2000-01-19  Ulrich Drepper  <drepper@cygnus.com>
 
+       * 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.
index feb8b823c0754f9827a685e07a450d05e7b8e178..72f8fc466e541fa1a9157f26a41604d7d485343f 100644 (file)
@@ -1,3 +1,7 @@
+2000-01-19  Ulrich Drepper  <drepper@cygnus.com>
+
+       * td_thr_getgregs.c: Correct size parameter of memset call.
+
 1999-12-02  Ulrich Drepper  <drepper@cygnus.com>
 
        * proc_service.h: Fix typos in last added declaractions.
index 549c7d8b837ded9da7e9a63f83b0d687fd3b932d..c485686afde30420afd284b26a0ca8937d0e37a2 100644 (file)
@@ -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 <drepper@cygnus.com>, 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;
index fb1b3acf30e727ac3d0942ad37d74149c6ebb106..99c0752efab31cb10d46d058f006d87fad7a8f1c 100644 (file)
@@ -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 */