From 123d4ba8fca0279ceb4691e9e1e09804cb9c9d33 Mon Sep 17 00:00:00 2001 From: alx Date: Thu, 25 Dec 2014 22:06:11 +0100 Subject: [PATCH] dtcopy: Fix file removal --- cde/programs/dtfile/dtcopy/fsrtns.c | 8 ++++---- 1 file changed, 4 insertions(+), 4 deletions(-) diff --git a/cde/programs/dtfile/dtcopy/fsrtns.c b/cde/programs/dtfile/dtcopy/fsrtns.c index c1d1d5604..5532aca2a 100644 --- a/cde/programs/dtfile/dtcopy/fsrtns.c +++ b/cde/programs/dtfile/dtcopy/fsrtns.c @@ -387,7 +387,7 @@ static int EraseObject(char *nameP, int force) { struct stat src_stat; - int rc; + int rc = 0; if (periodicCallback) if (periodicCallback() != 0) @@ -396,15 +396,15 @@ EraseObject(char *nameP, int force) if (lstat(nameP, &src_stat) < 0) rc = errno; else if ((src_stat.st_mode & S_IFMT) == S_IFDIR) { - if (! access(nameP, X_OK|W_OK)) + if (access(nameP, X_OK|W_OK)) return errno; rc = EmptyDir(nameP, 1, force); } else { - if (! (force || access(nameP, W_OK))) + if (!force && access(nameP, W_OK)) return errno; - if (! unlink(nameP)) + if (unlink(nameP)) rc = errno; }