diff options
Diffstat (limited to 'sysdeps/unix/sysv/linux/shmat.c')
-rw-r--r-- | sysdeps/unix/sysv/linux/shmat.c | 13 |
1 files changed, 7 insertions, 6 deletions
diff --git a/sysdeps/unix/sysv/linux/shmat.c b/sysdeps/unix/sysv/linux/shmat.c index 45ebd1177c..94d18d3f66 100644 --- a/sysdeps/unix/sysv/linux/shmat.c +++ b/sysdeps/unix/sysv/linux/shmat.c @@ -42,10 +42,11 @@ shmat (shmid, shmaddr, shmflg) shmid, shmflg, (long int) &raddr, (void *) shmaddr); - if (__glibc_unlikely (INTERNAL_SYSCALL_ERROR_P (resultvar, err))) - return INLINE_SYSCALL_ERROR_RETURN (-INTERNAL_SYSCALL_ERRNO (resultvar, - err), - void *, -1l); - else - return raddr; + if (INTERNAL_SYSCALL_ERROR_P (resultvar, err)) + { + __set_errno (INTERNAL_SYSCALL_ERRNO (resultvar, err)); + return (void *) -1l; + } + + return raddr; } |