diff --git a/stand/libsa/close.c b/stand/libsa/close.c index 3ea6ef16265a..d8f62fef6198 100644 --- a/stand/libsa/close.c +++ b/stand/libsa/close.c @@ -75,10 +75,9 @@ close(int fd) errno = EBADF; return (-1); } - if (f->f_rabuf != NULL) { - free(f->f_rabuf); - f->f_rabuf = NULL; - } + free(f->f_rabuf); + f->f_rabuf = NULL; + if (!(f->f_flags & F_RAW) && f->f_ops) err1 = (f->f_ops->fo_close)(f); if (!(f->f_flags & F_NODEV) && f->f_dev)