aboutsummaryrefslogtreecommitdiff
path: root/hurd/alloc-fd.c
diff options
context:
space:
mode:
Diffstat (limited to 'hurd/alloc-fd.c')
-rw-r--r--hurd/alloc-fd.c13
1 files changed, 5 insertions, 8 deletions
diff --git a/hurd/alloc-fd.c b/hurd/alloc-fd.c
index 60c8b00897..4edc742122 100644
--- a/hurd/alloc-fd.c
+++ b/hurd/alloc-fd.c
@@ -34,10 +34,7 @@ _hurd_alloc_fd (int *fd, int first_fd)
long int rlimit;
if (first_fd < 0)
- {
- errno = EINVAL;
- return NULL;
- }
+ return __hurd_fail (EINVAL), NULL;
crit = _hurd_critical_section_lock ();
@@ -99,7 +96,7 @@ _hurd_alloc_fd (int *fd, int first_fd)
if (size * sizeof (*_hurd_dtable) < size)
{
/* Integer overflow! */
- errno = ENOMEM;
+ __hurd_fail (ENOMEM);
goto out;
}
@@ -124,13 +121,13 @@ _hurd_alloc_fd (int *fd, int first_fd)
goto search;
}
else
- errno = ENOMEM;
+ __hurd_fail (ENOMEM);
}
else
- errno = EMFILE;
+ __hurd_fail (EMFILE);
}
else
- errno = EINVAL; /* Bogus FIRST_FD value. */
+ __hurd_fail (EINVAL); /* Bogus FIRST_FD value. */
out:
__mutex_unlock (&_hurd_dtable_lock);