Mercurial > hg > octave-lyh > gnulib-hg
changeset 433:c518df1ae5a3
(make_path): Use stat, not SAFE_STAT.
Use strchr, not index. Adjust defines accordingly.
author | Jim Meyering <jim@meyering.net> |
---|---|
date | Sat, 13 May 1995 13:30:10 +0000 |
parents | a56993d69333 |
children | d0610d27e9c2 |
files | lib/makepath.c |
diffstat | 1 files changed, 12 insertions(+), 12 deletions(-) [+] |
line wrap: on
line diff
--- a/lib/makepath.c +++ b/lib/makepath.c @@ -59,17 +59,17 @@ #include <errno.h> #endif -#ifndef STDC_HEADERS +#ifndef errno extern int errno; #endif -#if defined(STDC_HEADERS) || defined(HAVE_STRING_H) -#include <string.h> -#ifndef index -#define index strchr -#endif +#ifdef HAVE_STRING_H +# include <string.h> #else -#include <strings.h> +# include <strings.h> +# ifndef strchr +# define strchr index +# endif #endif #ifdef __MSDOS__ @@ -99,7 +99,7 @@ Return 0 if ARGPATH exists as a directory with the proper ownership and permissions when done, otherwise 1. */ -#if defined (__GNUC__) || (defined (__STDC__) && __STDC__) +#if __STDC__ int make_path (const char *argpath, int mode, @@ -131,7 +131,7 @@ dirpath = (char *) alloca (strlen (argpath) + 1); strcpy (dirpath, argpath); - if (SAFE_STAT (dirpath, &stats)) + if (stat (dirpath, &stats)) { char *slash; int tmp_mode; /* Initial perms for leading dirs. */ @@ -162,10 +162,10 @@ slash = dirpath; while (*slash == '/') slash++; - while ((slash = index (slash, '/'))) + while ((slash = strchr (slash, '/'))) { *slash = '\0'; - if (SAFE_STAT (dirpath, &stats)) + if (stat (dirpath, &stats)) { if (mkdir (dirpath, tmp_mode)) { @@ -219,7 +219,7 @@ /* The path could end in "/." or contain "/..", so test if we really have to create the directory. */ - if (SAFE_STAT (dirpath, &stats) && mkdir (dirpath, mode)) + if (stat (dirpath, &stats) && mkdir (dirpath, mode)) { error (0, errno, "cannot create directory `%s'", dirpath); umask (oldmask);