summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--ChangeLog7
-rw-r--r--include/sys/msg.h4
-rw-r--r--math/s_cacosh.c4
-rw-r--r--math/s_cacoshf.c4
-rw-r--r--math/s_cacoshl.c4
-rw-r--r--sysvipc/msgrcv.c4
6 files changed, 23 insertions, 4 deletions
diff --git a/ChangeLog b/ChangeLog
index 2f222e8125..34428caa54 100644
--- a/ChangeLog
+++ b/ChangeLog
@@ -1,8 +1,15 @@
2006-08-03 Ulrich Drepper <drepper@redhat.com>
+ [BZ #2182]
+ * math/s_cacosh.c: Return values from positive branch.
+ * math/s_cacoshf.c: Likewise.
+ * math/s_cacoshl.c: Likewise.
+
[BZ #2883]
* sysvipc/sys/msg.h: Change return value to ssize_t.
* sysdeps/unix/sysv/linux/msgrcv.c: Likewise.
+ * sysvipc/msgrcv.c: Likewise.
+ * include/sys/msg.h: Likewise.
* grp/initgroups.c (internal_getgrouplist): Remove unnecessary
test introduced in patch for bz #661.
diff --git a/include/sys/msg.h b/include/sys/msg.h
index 02bb9aefd0..03e17f915e 100644
--- a/include/sys/msg.h
+++ b/include/sys/msg.h
@@ -1,8 +1,8 @@
#ifndef _SYS_MSG_H
#include <sysvipc/sys/msg.h>
-extern int __libc_msgrcv (int msqid, void *msgp, size_t msgsz, long int msgtyp,
- int msgflg);
+extern ssize_t __libc_msgrcv (int msqid, void *msgp, size_t msgsz,
+ long int msgtyp, int msgflg);
extern int __libc_msgsnd (int msqid, const void *msgp, size_t msgsz,
int msgflg);
diff --git a/math/s_cacosh.c b/math/s_cacosh.c
index e921f0763e..ada7ca5af6 100644
--- a/math/s_cacosh.c
+++ b/math/s_cacosh.c
@@ -80,6 +80,10 @@ __cacosh (__complex__ double x)
__imag__ y += __imag__ x;
res = __clog (y);
+
+ /* We have to use the positive branch. */
+ if (__real__ res < 0.0)
+ res = -res;
}
return res;
diff --git a/math/s_cacoshf.c b/math/s_cacoshf.c
index 3fc48bb617..a062ffc6f6 100644
--- a/math/s_cacoshf.c
+++ b/math/s_cacoshf.c
@@ -95,6 +95,10 @@ __cacoshf (__complex__ float x)
+ ro);
__imag__ res = __ieee754_atan2f (__imag__ x + b, __real__ x + a);
#endif
+
+ /* We have to use the positive branch. */
+ if (__real__ res < 0.0)
+ res = -res;
}
return res;
diff --git a/math/s_cacoshl.c b/math/s_cacoshl.c
index 643858920e..da23c8d8aa 100644
--- a/math/s_cacoshl.c
+++ b/math/s_cacoshl.c
@@ -80,6 +80,10 @@ __cacoshl (__complex__ long double x)
__imag__ y += __imag__ x;
res = __clogl (y);
+
+ /* We have to use the positive branch. */
+ if (__real__ res < 0.0)
+ res = -res;
}
return res;
diff --git a/sysvipc/msgrcv.c b/sysvipc/msgrcv.c
index f366fa8170..83732b3113 100644
--- a/sysvipc/msgrcv.c
+++ b/sysvipc/msgrcv.c
@@ -1,4 +1,4 @@
-/* Copyright (C) 1995, 1996, 1997 Free Software Foundation, Inc.
+/* Copyright (C) 1995, 1996, 1997, 2006 Free Software Foundation, Inc.
This file is part of the GNU C Library.
Contributed by Ulrich Drepper <drepper@gnu.ai.mit.edu>, August 1995.
@@ -26,7 +26,7 @@
describes which message is returned in MSGFLG describes the behaviour
in buffer overflow or queue underflow. */
-int
+ssize_t
msgrcv (msqid, msgp, msgsz, msgtyp, msgflg)
int msqid;
void *msgp;