aboutsummaryrefslogtreecommitdiff
path: root/nptl/pt-msgsnd.c
diff options
context:
space:
mode:
Diffstat (limited to 'nptl/pt-msgsnd.c')
-rw-r--r--nptl/pt-msgsnd.c13
1 files changed, 5 insertions, 8 deletions
diff --git a/nptl/pt-msgsnd.c b/nptl/pt-msgsnd.c
index 4297f9dc4e..bc09779c2e 100644
--- a/nptl/pt-msgsnd.c
+++ b/nptl/pt-msgsnd.c
@@ -28,16 +28,13 @@
int
msgsnd (int msqid, const void *msgp, size_t msgsz, int msgflg)
{
- int result;
- int oldtype;
+ int oldtype = CANCEL_ASYNC ();
- CANCEL_ASYNC (oldtype);
-
-#ifdef INLINE_SYSCALL
- result = INLINE_SYSCALL (ipc, 5, IPCOP_msgsnd, msqid, msgsz,
- msgflg, (void *) msgp);
+#if defined INLINE_SYSCALL && defined __NR_ipc
+ int result = INLINE_SYSCALL (ipc, 5, IPCOP_msgsnd, msqid, msgsz,
+ msgflg, (void *) msgp);
#else
- result = __libc_msgsnd (msqid, msgp, msgsz, msgflg);
+ int result = __libc_msgsnd (msqid, msgp, msgsz, msgflg);
#endif
CANCEL_RESET (oldtype);