Yup, that seems to work fine now.
Many thanks
Jason
On Fri, 2002-03-22 at 10:14, Philip Hazel wrote:
> On 21 Mar 2002, Jason Stratford wrote:
>
> > Thanks for the reply, here are the transport and director I use (if you
> > need the entire config file, let me know and I will send it off list)...
>
> Thanks. That confirms my diagnosis, so I believe I now understand what
> happened. Please can you try the patch below and let me know if it
> works.
>
> Thanks,
> Philip
>
> --
> Philip Hazel University of Cambridge Computing Service,
> ph10@??? Cambridge, England. Phone: +44 1223 334714.
>
>
>
>
> *** exim-4.01/src/deliver.c Mon Mar 4 10:03:41 2002
> --- deliver.c Fri Mar 22 10:05:45 2002
> ***************
> *** 1395,1402 ****
> return;
> }
>
> ! /* Now fork the process to do the real work in the sub-process. */
>
> if ((pid = fork()) == 0)
> {
> BOOL replicate = TRUE;
> --- 1393,1404 ----
> return;
> }
>
> ! /* Now fork the process to do the real work in the subprocess, but first
> ! ensure that all cached resources are freed so that the subprocess starts with
> ! a clean slate and doesn't interfere with the parent process. */
>
> + search_tidyup();
> +
> if ((pid = fork()) == 0)
> {
> BOOL replicate = TRUE;
> ***************
> *** 3221,3228 ****
> continue;
> }
>
> ! /* Now fork a sub-process to do the remote delivery. */
>
> if ((pid = fork()) == 0)
> {
> int fd = pfd[pipe_write];
> --- 3234,3245 ----
> continue;
> }
>
> ! /* Now fork a subprocess to do the remote delivery, but before doing so,
> ! ensure that any cached resourses are released so as not to interfere with
> ! what happens in ths subprocess. */
>
> + search_tidyup();
> +
> if ((pid = fork()) == 0)
> {
> int fd = pfd[pipe_write];
>