From: Amos Jeffries Date: Fri, 10 Apr 2009 07:15:05 +0000 (+1200) Subject: Author: Mark Nottingham X-Git-Tag: SQUID_3_0_STABLE14~16 X-Git-Url: http://git.ipfire.org/cgi-bin/gitweb.cgi?a=commitdiff_plain;h=00d363695fe2478e3136521e4eed7acfc2eae9f3;p=thirdparty%2Fsquid.git Author: Mark Nottingham Bug 2599: Idempotent start As discussed on squid-dev, Squid shouldn't return a shell error when: - starting squid, if it's already running - stopping squid, if it isn't running This is to make writing scripts that control squid easier. Note that it should still notify the user, and should not affect other operations (e.g., kill, rotate, parse). --- diff --git a/src/main.cc b/src/main.cc index aa44bb672e..9ec53c4d27 100644 --- a/src/main.cc +++ b/src/main.cc @@ -1218,7 +1218,7 @@ main(int argc, char **argv) setUmask(Config.umask); if (-1 == opt_send_signal) if (checkRunningPid()) - exit(1); + exit(0); #if TEST_ACCESS @@ -1384,8 +1384,13 @@ sendSignal(void) exit(1); } } else { - fprintf(stderr, "%s: ERROR: No running copy\n", appname); - exit(1); + if (opt_send_signal != SIGTERM) { + fprintf(stderr, "%s: ERROR: No running copy\n", appname); + exit(1); + } else { + fprintf(stderr, "%s: No running copy\n", appname); + exit(0); + } } /* signal successfully sent */