]> git.saurik.com Git - apple/xnu.git/blobdiff - bsd/nfs/nfs_vnops.c
xnu-517.9.4.tar.gz
[apple/xnu.git] / bsd / nfs / nfs_vnops.c
index 9ca4502e28263439dc303b95c712b35cfe6a08d2..a1f5b2a3d369215622f6d55f6934eb409d80eb47 100644 (file)
@@ -2027,8 +2027,11 @@ again:
                }
                if (newvp)
                        vput(newvp);
-       } else if (v3 && (fmode & O_EXCL))
+       } else if (v3 && (fmode & O_EXCL)) {
                error = nfs_setattrrpc(newvp, vap, cnp->cn_cred, cnp->cn_proc);
+               if (error)
+                       vput(newvp);
+       }
        if (!error) {
                if (cnp->cn_flags & MAKEENTRY)
                        cache_enter(dvp, newvp, cnp);