X-Git-Url: https://git.exim.org/exim.git/blobdiff_plain/7d99cba1d36af854760c35100b29f0331f619fca..0006e6d8e151bb4b34452da30da60184736bb5ae:/src/src/rda.c diff --git a/src/src/rda.c b/src/src/rda.c index 574b86cdd..aed8abc24 100644 --- a/src/src/rda.c +++ b/src/src/rda.c @@ -42,7 +42,7 @@ Returns: FILTER_EXIM if it starts with "# Exim filter" static BOOL match_tag(const uschar *s, const uschar *tag) { -for (; *tag != 0; s++, tag++) +for (; *tag; s++, tag++) if (*tag == ' ') { while (*s == ' ' || *s == '\t') s++; @@ -60,10 +60,10 @@ tags for other types of filter. */ int rda_is_filter(const uschar *s) { -while (isspace(*s)) s++; /* Skips initial blank lines */ -if (match_tag(s, CUS"# exim filter")) return FILTER_EXIM; - else if (match_tag(s, CUS"# sieve filter")) return FILTER_SIEVE; - else return FILTER_FORWARD; +Uskip_whitespace(&s); /* Skips initial blank lines */ +if (match_tag(s, CUS"# exim filter")) return FILTER_EXIM; +else if (match_tag(s, CUS"# sieve filter")) return FILTER_SIEVE; +else return FILTER_FORWARD; } @@ -615,7 +615,7 @@ with the parent process. */ oldsignal = signal(SIGCHLD, SIG_DFL); search_tidyup(); -if ((pid = fork()) == 0) +if ((pid = exim_fork(US"router-interpret")) == 0) { header_line *waslast = header_last; /* Save last header */ @@ -768,7 +768,7 @@ if ((pid = fork()) == 0) out: (void)close(fd); search_tidyup(); - exim_underbar_exit(0); + exim_underbar_exit(EXIT_SUCCESS); bad: DEBUG(D_rewrite) debug_printf("rda_interpret: failed write to pipe\n");