Greetings,
        I have isolated what, I think, causes my particular bug.  Following is 
a patch.

Thanks,

Brooks

<Here starteth the patch>
diff -Naur asterisk-1.0.7.dfsg.1/asterisk.c 
asterisk-1.0.7.dfsg.1.patched/asterisk.c
--- asterisk-1.0.7.dfsg.1/asterisk.c    2005-11-16 13:36:55.308985128 -0600
+++ asterisk-1.0.7.dfsg.1.patched/asterisk.c    2005-11-16 13:37:10.426686888 
-0600
@@ -1785,11 +1785,12 @@
 
        if (!option_verbose && !option_debug && !option_nofork && 
!option_console) {
                daemon(0,0);
+               ast_mainpid = getpid();
                /* Blindly re-write pid file since we are forking */
                unlink((char *)ast_config_AST_PID);
                f = fopen((char *)ast_config_AST_PID, "w");
                if (f) {
-                       fprintf(f, "%d\n", getpid());
+                       fprintf(f, "%d\n", ast_mainpid);
                        fclose(f);
                } else
                        ast_log(LOG_WARNING, "Unable to open pid file '%s': 
%s\n", (char *)ast_config_AST_PID, strerror(errno));
<Here endeth the patch>
diff -Naur asterisk-1.0.7.dfsg.1/asterisk.c 
asterisk-1.0.7.dfsg.1.patched/asterisk.c
--- asterisk-1.0.7.dfsg.1/asterisk.c    2005-11-16 13:36:55.308985128 -0600
+++ asterisk-1.0.7.dfsg.1.patched/asterisk.c    2005-11-16 13:37:10.426686888 
-0600
@@ -1785,11 +1785,12 @@
 
        if (!option_verbose && !option_debug && !option_nofork && 
!option_console) {
                daemon(0,0);
+               ast_mainpid = getpid();
                /* Blindly re-write pid file since we are forking */
                unlink((char *)ast_config_AST_PID);
                f = fopen((char *)ast_config_AST_PID, "w");
                if (f) {
-                       fprintf(f, "%d\n", getpid());
+                       fprintf(f, "%d\n", ast_mainpid);
                        fclose(f);
                } else
                        ast_log(LOG_WARNING, "Unable to open pid file '%s': 
%s\n", (char *)ast_config_AST_PID, strerror(errno));

Reply via email to