X-Git-Url: https://pd.if.org/git/?a=blobdiff_plain;f=zpm-syncfs.c;h=d4fe2806eb9a3436764d2d1edc5a0c588cd6cc7c;hb=a05f1728d09e6e17ca2b74c42052314cf88f7599;hp=68f2e423e4c43ca6d52bafd25d4a26867acccab9;hpb=9acfd23b8707b49d642b3dc3f1ea531cba88604c;p=zpackage diff --git a/zpm-syncfs.c b/zpm-syncfs.c index 68f2e42..d4fe280 100644 --- a/zpm-syncfs.c +++ b/zpm-syncfs.c @@ -628,8 +628,17 @@ static int remove_files(void *f, int ncols, char **vals, char **cols) { return 0; } + errno = 0; + if (lstat(dest, &st) == -1) { - return seterror(conf,"can't stat"); + switch (errno) { + case ENOENT: + /* TODO chatter if verbose */ + break; + default: + return seterror(conf, "can't stat %s: %s", dest, strerror(errno)); + } + return 0; } if (S_ISDIR(st.st_mode)) { @@ -658,7 +667,7 @@ static int remove_files(void *f, int ncols, char **vals, char **cols) { case ENOENT: break; default: - return seterror(conf, "can't unlink"); + return seterror(conf, "can't unlink %s: %s", dest, strerror(errno)); } }