From 0980a17c8768df02b4d6852b7a711b5c83b44eca Mon Sep 17 00:00:00 2001 From: Miles Bader Date: Mon, 6 Nov 1995 20:12:05 +0000 Subject: (diskfs_S_dir_lookup): Fix various typos. (short_circuited_callback1): Dereference ARGZ & ARGZ_LEN. Include --- libdiskfs/dir-lookup.c | 15 ++++++++------- 1 file changed, 8 insertions(+), 7 deletions(-) (limited to 'libdiskfs') diff --git a/libdiskfs/dir-lookup.c b/libdiskfs/dir-lookup.c index 855de6a2..c1c57e6d 100644 --- a/libdiskfs/dir-lookup.c +++ b/libdiskfs/dir-lookup.c @@ -20,6 +20,7 @@ #include #include #include +#include /* XXX - Temporary hack; this belongs in a header file, probably types.h. */ #define major(x) ((int)(((unsigned) (x) >> 8) & 0xff)) @@ -175,7 +176,7 @@ diskfs_S_dir_lookup (struct protid *dircred, /* If this is translated, start the translator (if necessary) and return. */ if ((((flags & O_NOTRANS) == 0) || !lastcomp) - && (node->istranslated + && (np->istranslated || S_ISFIFO (np->dn_stat.st_mode) || S_ISCHR (np->dn_stat.st_mode) || S_ISBLK (np->dn_stat.st_mode) @@ -199,14 +200,14 @@ diskfs_S_dir_lookup (struct protid *dircred, (S_ISCHR (node->dn_stat.st_mode) ? _HURD_CHRDEV : _HURD_BLKDEV), 0, major (node->dn_stat.st_rdev), - 0, minor (node->dn_stat.st_rdev),); - argz_len = strlen (argz) + 1; - argz_len += strlen (argz + argz_len) + 1; - argz_len += strlen (argz + argz_len) + 1; + 0, minor (node->dn_stat.st_rdev)); + *argz_len = strlen (*argz) + 1; + *argz_len += strlen (*argz + *argz_len) + 1; + *argz_len += strlen (*argz + *argz_len) + 1; break; case S_IFIFO: asprintf (argz, "%s", _HURD_FIFO); - argz_len = strlen (argz) + 1; + *argz_len = strlen (*argz) + 1; break; default: return ENOENT; @@ -235,7 +236,7 @@ diskfs_S_dir_lookup (struct protid *dircred, dirport, dircred->uids, dircred->nuids, dircred->gids, dircred->ngids, lastcomp ? flags : 0, - (node->istranslated + (np->istranslated ? _diskfs_translator_callback1 : short_circuited_callback1), _diskfs_translator_callback2, -- cgit v1.2.3