diff options
| author | David Greenman <dg@FreeBSD.org> | 1997-08-15 05:21:16 +0000 | 
|---|---|---|
| committer | David Greenman <dg@FreeBSD.org> | 1997-08-15 05:21:16 +0000 | 
| commit | f5f31fba120636e0c1eceb3313290517f3751133 (patch) | |
| tree | add82e1f944d3fd492f310dca1221f083b956c8b | |
| parent | f5a5311ee8f14fdc4bce62d7827101bafcdee8a0 (diff) | |
Notes
| -rw-r--r-- | lib/libc/gen/getcwd.c | 7 | 
1 files changed, 5 insertions, 2 deletions
| diff --git a/lib/libc/gen/getcwd.c b/lib/libc/gen/getcwd.c index 42ca3362a61a..1593311d4c8a 100644 --- a/lib/libc/gen/getcwd.c +++ b/lib/libc/gen/getcwd.c @@ -56,7 +56,7 @@ getcwd(pt, size)  	size_t size;  {  	register struct dirent *dp; -	register DIR *dir; +	register DIR *dir = NULL;  	register dev_t dev;  	register ino_t ino;  	register int first; @@ -213,7 +213,8 @@ getcwd(pt, size)  			*--bpt = '/';  		bpt -= dp->d_namlen;  		bcopy(dp->d_name, bpt, dp->d_namlen); -		(void)closedir(dir); +		(void) closedir(dir); +		dir = NULL;  		/* Truncate any file name. */  		*bup = '\0'; @@ -231,6 +232,8 @@ notfound:  err:  	if (ptsize)  		free(pt); +	if (dir) +		(void) closedir(dir);  	free(up);  	return (NULL);  } | 
