You are viewing a plain text version of this content. The canonical link for it is here.
Posted to cvs@httpd.apache.org by dr...@locus.apache.org on 2000/06/22 02:47:57 UTC

cvs commit: apache-2.0/src/modules/mpm/beos beos.c scoreboard.c

dreid       00/06/21 17:47:56

  Modified:    src/modules/mpm/beos beos.c scoreboard.c
  Log:
  Correct the pid that's being stored in the child_table to reflect what it's
  supposed to (doh!) and fix some things to help with restarts.
  
  Revision  Changes    Path
  1.2       +6 -1      apache-2.0/src/modules/mpm/beos/beos.c
  
  Index: beos.c
  ===================================================================
  RCS file: /home/cvs/apache-2.0/src/modules/mpm/beos/beos.c,v
  retrieving revision 1.1
  retrieving revision 1.2
  diff -u -r1.1 -r1.2
  --- beos.c	2000/06/20 14:30:00	1.1
  +++ beos.c	2000/06/22 00:47:53	1.2
  @@ -564,7 +564,7 @@
       }
       resume_thread(tid);
       
  -    ap_child_table[slot].pid = getpid();
  +    ap_child_table[slot].pid = tid;
       ap_child_table[slot].status = SERVER_ALIVE;
       return 0;
   }
  @@ -888,6 +888,11 @@
       if (!is_graceful) {
           ap_restart_time = time(NULL); 
       }
  +
  +    /* just before we go, tidy up the locks we've created to prevent a 
  +     * potential leak of semaphores... */
  +    ap_destroy_lock(worker_thread_count_mutex);
  +    ap_destroy_lock(accept_mutex);
   
       return 0;
   }
  
  
  
  1.2       +2 -2      apache-2.0/src/modules/mpm/beos/scoreboard.c
  
  Index: scoreboard.c
  ===================================================================
  RCS file: /home/cvs/apache-2.0/src/modules/mpm/beos/scoreboard.c,v
  retrieving revision 1.1
  retrieving revision 1.2
  diff -u -r1.1 -r1.2
  --- scoreboard.c	2000/06/20 14:30:01	1.1
  +++ scoreboard.c	2000/06/22 00:47:54	1.2
  @@ -73,8 +73,8 @@
   
   void reinit_scoreboard(ap_pool_t *p)
   {
  -    ap_assert(!ap_scoreboard_image);
  -    ap_scoreboard_image = (scoreboard *) malloc(SCOREBOARD_SIZE);
  +    if (!ap_scoreboard_image)
  +        ap_scoreboard_image = (scoreboard *) malloc(SCOREBOARD_SIZE);
       if (ap_scoreboard_image == NULL) {
           ap_log_error(APLOG_MARK, APLOG_STARTUP | APLOG_NOERRNO, 0, NULL, 
                        "Ouch! Out of memory reiniting scoreboard!");