--- server/scoreboard.c.orig 2011-05-08 12:42:25 +0800 +++ server/scoreboard.c 2011-05-08 12:43:28 +0800 @@ -315,19 +315,23 @@ } AP_DECLARE(void) ap_increment_counts(ap_sb_handle_t *sb, request_rec *r) { worker_score *ws; + request_rec *rp = r; ws = &ap_scoreboard_image->servers[sb->child_num][sb->thread_num]; #ifdef HAVE_TIMES times(&ws->times); #endif ws->access_count++; ws->my_access_count++; ws->conn_count++; + + while (rp->next) rp = rp->next; + ws->bytes_served += r->bytes_sent; ws->my_bytes_served += r->bytes_sent; ws->conn_bytes += r->bytes_sent; }