diff --git a/sys/kern/tty_pts.c b/sys/kern/tty_pts.c index 4c272ad..d5efed3 100644 --- a/sys/kern/tty_pts.c +++ b/sys/kern/tty_pts.c @@ -836,6 +836,7 @@ sys_posix_openpt(struct thread *td, struct posix_openpt_args *uap) error = pts_alloc(FFLAGS(uap->flags & O_ACCMODE), td, fp); if (error != 0) { fdclose(td->td_proc->p_fd, fp, fd, td); + fdrop(fp, td); return (error); }