diff options
Diffstat (limited to 'libdiskfs/dir-lookup.c')
-rw-r--r-- | libdiskfs/dir-lookup.c | 8 |
1 files changed, 5 insertions, 3 deletions
diff --git a/libdiskfs/dir-lookup.c b/libdiskfs/dir-lookup.c index 489b4dd8..2cecc91d 100644 --- a/libdiskfs/dir-lookup.c +++ b/libdiskfs/dir-lookup.c @@ -209,6 +209,7 @@ diskfs_S_dir_lookup (struct protid *dircred, || fshelp_translated (&np->transbox))) { mach_port_t dirport; + struct iouser *user; /* A callback function for short-circuited translators. Symlink & ifsock are handled elsewhere. */ @@ -247,11 +248,12 @@ diskfs_S_dir_lookup (struct protid *dircred, /* Create an unauthenticated port for DNP, and then unlock it. */ + user = iohelp_create_iouser (make_idvec (), make_idvec ()); error = diskfs_create_protid (diskfs_make_peropen (dnp, 0, dircred->po), - iohelp_create_iouser (make_idvec (), - make_idvec ()), - &newpi); + user, &newpi); + iohelp_free_iouser (user); + if (error) goto out; |