Looks like the waitpid() loop got put in the wrong place in spamd in the
2.0 release.  It needs to be the last statement in the for, but it ended up
as the last statement in the spawned sub, so runs in the wrong process.

Tom

*** spamd/spamd.raw.orig        Fri Jan 18 20:30:51 2002
--- spamd/spamd.raw     Wed Jan 23 17:57:10 2002
***************
*** 441,455 ****
        {
            protocol_error ($_);
        }
- 
-       # Clean up any defunct processes.  (Not perfect, as usually leaves at
-       # least one around until next connection, but avoids handling SIGCHLD.)
-       # Needed on SunOS, where SIGCHLD=IGNORE doesn't make it automatic.
-       my $kid;
-       do {
-           $kid = waitpid(-1,&WNOHANG);
-       } until ($kid <= 0);
      };
  }
  
  sub protocol_error {
--- 441,454 ----
        {
            protocol_error ($_);
        }
      };
+     # Clean up any defunct processes.  (Not perfect, as usually leaves at
+     # least one around until next connection, but avoids handling SIGCHLD.)
+     # Needed on SunOS, where SIGCHLD=IGNORE doesn't make it automatic.
+     my $kid;
+     do {
+       $kid = waitpid(-1,&WNOHANG);
+     } until ($kid <= 0);
  }
  
  sub protocol_error {

_______________________________________________
Spamassassin-talk mailing list
[EMAIL PROTECTED]
https://lists.sourceforge.net/lists/listinfo/spamassassin-talk

Reply via email to