# HG changeset patch # User Richard M. Stallman # Date 759134056 0 # Node ID 1476768ef7fc123e24efc869309180c87437946f # Parent 016c15cf28a7f1587c4cbfa41e495a64b2656946 (S_ISDIR): Define if not defined. (file_p): Use S_ISDIR. (search_magic_path): Fix logic testing for empty path element. diff -r 016c15cf28a7 -r 1476768ef7fc src/xrdb.c --- a/src/xrdb.c Fri Jan 21 04:19:19 1994 +0000 +++ b/src/xrdb.c Fri Jan 21 06:34:16 1994 +0000 @@ -55,6 +55,10 @@ #define MAXPATHLEN 256 #endif +#if !defined(S_ISDIR) && defined(S_IFDIR) +#define S_ISDIR(m) (((m) & S_IFMT) == S_IFDIR) +#endif + extern char *getenv (); /* This does cause trouble on AIX. I'm going to take the comment at @@ -320,7 +324,7 @@ return (access (path, 4) == 0 /* exists and is readable */ && stat (path, &status) == 0 /* get the status */ - && (status.st_mode & S_IFDIR) == 0); /* not a directory */ + && (S_ISDIR (status.st_mode)) == 0); /* not a directory */ } @@ -339,7 +343,13 @@ for (p = s; *p && *p != ':'; p++) ; - if (*p == ':' && *(p + 1) == ':') + if (p > s) + { + char *path = magic_file_p (s, p - s, class, escaped_suffix, suffix); + if (path) + return path; + } + else if (*p == ':') { char *path; @@ -347,17 +357,6 @@ path = magic_file_p (s, strlen (s), class, escaped_suffix, suffix); if (path) return path; - - /* Skip the first colon. */ - p++; - continue; - } - - if (p > s) - { - char *path = magic_file_p (s, p - s, class, escaped_suffix, suffix); - if (path) - return path; } if (*p == ':')