]> git.saurik.com Git - apple/xnu.git/blobdiff - bsd/vfs/vfs_lookup.c
xnu-6153.101.6.tar.gz
[apple/xnu.git] / bsd / vfs / vfs_lookup.c
index 85d47741ee3c9fea99a9709b9d45e49bd584b61d..77c525baac8014c906286e7d6489e74aa51f3943 100644 (file)
@@ -1261,13 +1261,15 @@ dirloop:
                        tdp = dp;
                        dp = tdp->v_mount->mnt_vnodecovered;
 
-                       vnode_put(tdp);
-
                        if ((vnode_getwithref(dp))) {
+                               vnode_put(tdp);
                                dp = NULLVP;
                                error = ENOENT;
                                goto bad;
                        }
+
+                       vnode_put(tdp);
+
                        ndp->ni_dvp = dp;
                        dp_authorized = 0;
                }