X-Git-Url: http://erislabs.net/gitweb/?a=blobdiff_plain;f=lib%2Frmdir.c;h=2a92803db7e60c14f01b6cd4567657ca746d465d;hb=4d2ba1df0fd6135c58ce1dc16e8e28ba510e700e;hp=f10b3969e67b74c71f67940f102eed3dfea72f21;hpb=760d9074e721bbffc97ca68eb48c06a248727c4e;p=gnulib.git diff --git a/lib/rmdir.c b/lib/rmdir.c index f10b3969e..2a92803db 100644 --- a/lib/rmdir.c +++ b/lib/rmdir.c @@ -1,4 +1,4 @@ -/* rmdir.c -- BSD compatible remove directory function for System V +/* BSD compatible remove directory function for System V Copyright (C) 1988, 1990 Free Software Foundation, Inc. This program is free software; you can redistribute it and/or modify @@ -12,18 +12,11 @@ GNU General Public License for more details. You should have received a copy of the GNU General Public License - along with this program; if not, write to the Free Software - Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA. */ - -#ifdef HAVE_CONFIG_H -#if defined (CONFIG_BROKETS) -/* We use instead of "config.h" so that a compilation - using -I. -I$srcdir will use ./config.h rather than $srcdir/config.h - (which it would do because it found this file in $srcdir). */ -#include -#else -#include "config.h" -#endif + along with this program; if not, write to the Free Software Foundation, + Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA. */ + +#if HAVE_CONFIG_H +# include #endif #include @@ -34,16 +27,14 @@ extern int errno; #endif -#ifdef STAT_MACROS_BROKEN -#undef S_ISDIR +#if STAT_MACROS_BROKEN +# undef S_ISDIR #endif #if !defined(S_ISDIR) && defined(S_IFDIR) -#define S_ISDIR(m) (((m) & S_IFMT) == S_IFDIR) +# define S_ISDIR(m) (((m) & S_IFMT) == S_IFDIR) #endif -#include "safe-stat.h" - /* rmdir adapted from GNU tar. */ /* Remove directory DPATH. @@ -53,10 +44,11 @@ int rmdir (dpath) char *dpath; { - int cpid, status; + pid_t cpid; + int status; struct stat statbuf; - if (SAFE_STAT (dpath, &statbuf) != 0) + if (stat (dpath, &statbuf) != 0) return -1; /* errno already set */ if (!S_ISDIR (statbuf.st_mode)) @@ -82,7 +74,7 @@ rmdir (dpath) while (wait (&status) != cpid) /* Do nothing. */ ; - if (status & 0xFFFF) + if (status) { /* /bin/rmdir failed. */