From 4ce73d70968875fa0c07f07e90a2bdcb84726bd6 Mon Sep 17 00:00:00 2001 From: eivind Date: Sat, 13 Nov 1999 20:58:17 +0000 Subject: Remove WILLRELE from VOP_SYMLINK Note: Previous commit to these files (except coda_vnops and devfs_vnops) that claimed to remove WILLRELE from VOP_RENAME actually removed it from VOP_MKNOD. --- sys/coda/coda_vnops.c | 10 +++------- 1 file changed, 3 insertions(+), 7 deletions(-) (limited to 'sys/coda') diff --git a/sys/coda/coda_vnops.c b/sys/coda/coda_vnops.c index 6614b4b..5f86c09 100644 --- a/sys/coda/coda_vnops.c +++ b/sys/coda/coda_vnops.c @@ -1578,6 +1578,7 @@ coda_symlink(v) char *path = ap->a_target; struct ucred *cred = cnp->cn_cred; struct proc *p = cnp->cn_proc; + struct vnode **vpp = ap->a_vpp; /* locals */ int error; /* @@ -1590,7 +1591,6 @@ coda_symlink(v) int len = cnp->cn_namelen; int plen = strlen(path); - /* XXX What about the vpp argument? Do we need it? */ /* * Here's the strategy for the moment: perform the symlink, then * do a lookup to grab the resulting vnode. I know this requires @@ -1625,12 +1625,8 @@ coda_symlink(v) /* Invalidate the parent's attr cache, the modification time has changed */ tdcp->c_flags &= ~C_VATTR; - /* - * Free the name buffer - */ - if ((cnp->cn_flags & SAVESTART) == 0) { - zfree(namei_zone, cnp->cn_pnbuf); - } + if (error == 0) + error = VOP_LOOKUP(tdvp, vpp, cnp); exit: CODADEBUG(CODA_SYMLINK, myprintf(("in symlink result %d\n",error)); ) -- cgit v1.1