summaryrefslogtreecommitdiffstats
path: root/sys/sys
diff options
context:
space:
mode:
authormjg <mjg@FreeBSD.org>2017-03-24 08:06:00 +0000
committermjg <mjg@FreeBSD.org>2017-03-24 08:06:00 +0000
commit4df1b0ecbe8b97b7b2a33fe8acc3e1936f273f92 (patch)
treec6f1ae23e5ed5e32a27984d78f05710a51b8279a /sys/sys
parent5b71b79a133d66b5b2098a053a3cb4dca00283b3 (diff)
downloadFreeBSD-src-4df1b0ecbe8b97b7b2a33fe8acc3e1936f273f92.zip
FreeBSD-src-4df1b0ecbe8b97b7b2a33fe8acc3e1936f273f92.tar.gz
MFC r305383:
fd: fix up fdeget_file It was supposed to return NULL if a fp is not installed.
Diffstat (limited to 'sys/sys')
-rw-r--r--sys/sys/filedesc.h7
1 files changed, 6 insertions, 1 deletions
diff --git a/sys/sys/filedesc.h b/sys/sys/filedesc.h
index dfd81a4..e684f74 100644
--- a/sys/sys/filedesc.h
+++ b/sys/sys/filedesc.h
@@ -215,13 +215,18 @@ fget_locked(struct filedesc *fdp, int fd)
static __inline struct filedescent *
fdeget_locked(struct filedesc *fdp, int fd)
{
+ struct filedescent *fde;
FILEDESC_LOCK_ASSERT(fdp);
if ((u_int)fd > fdp->fd_lastfile)
return (NULL);
- return (&fdp->fd_ofiles[fd]);
+ fde = &fdp->fd_ofiles[fd];
+ if (fde->fde_file == NULL)
+ return (NULL);
+
+ return (fde);
}
static __inline bool
OpenPOWER on IntegriCloud