From b63baae8d86d19a53f97dad36961488ae777b4e3 Mon Sep 17 00:00:00 2001 From: Matthias Andree Date: Mon, 12 Jun 2006 11:45:05 +0000 Subject: No longer stat rcfile if it's called -. Fixes BerliOS bug #7858. svn path=/branches/BRANCH_6-3/; revision=4853 --- NEWS | 3 +++ fetchmail.c | 7 ++++--- 2 files changed, 7 insertions(+), 3 deletions(-) diff --git a/NEWS b/NEWS index f35a730b..10237e5f 100644 --- a/NEWS +++ b/NEWS @@ -82,6 +82,9 @@ fetchmail 6.3.5 (not yet released): - also enter IDLE loop when messages are present on the server. * Fix --flush description in the manual page, fetchmail does not mark messages seen unless it has successfully delivered them. Suggested by Frederic Marchal. +* Fetchmail no longer attempts to stat the "-" file in daemon mode -- this is a + special name to read the RC file from stdin, and cannot always be re-read + anyways. BerliOS bug #7858. # CHANGES: * Rename all fetchmail-internal lock_* functions to fm_lock_*. Obsoletes diff --git a/fetchmail.c b/fetchmail.c index dd082f2f..1c895a0a 100644 --- a/fetchmail.c +++ b/fetchmail.c @@ -597,8 +597,9 @@ int main(int argc, char **argv) */ struct stat rcstat; - if (stat(rcfile, &rcstat) == -1) - { + if (strcmp(rcfile, "-") == 0) { + /* do nothing */ + } else if (stat(rcfile, &rcstat) == -1) { if (errno != ENOENT) report(stderr, GT_("couldn't time-check %s (error %d)\n"), @@ -986,7 +987,7 @@ static int load_params(int argc, char **argv, int optind) /* note the parse time, so we can pick up on modifications */ parsetime = 0; /* foil compiler warnings */ - if (stat(rcfile, &rcstat) != -1) + if (strcmp(rcfile, "-") == 0 || stat(rcfile, &rcstat) != -1) parsetime = rcstat.st_mtime; else if (errno != ENOENT) report(stderr, GT_("couldn't time-check the run-control file\n")); -- cgit v1.2.3