From: Yann Ylavic Date: Tue, 7 Oct 2014 15:46:05 +0000 (+0000) Subject: mpms: enforce assertion that unreachable code is not reached. X-Git-Tag: 2.5.0-alpha~3794 X-Git-Url: https://granicus.if.org/sourcecode?a=commitdiff_plain;h=90d30c63e0466731c49b6797cc90e390ef8ff4cf;p=apache mpms: enforce assertion that unreachable code is not reached. git-svn-id: https://svn.apache.org/repos/asf/httpd/httpd/trunk@1629918 13f79535-47bb-0310-9956-ffa450edef68 --- diff --git a/server/mpm/event/event.c b/server/mpm/event/event.c index d5e40c3916..9f602c03ef 100644 --- a/server/mpm/event/event.c +++ b/server/mpm/event/event.c @@ -2604,6 +2604,8 @@ static int make_child(server_rec * s, int slot, int bucket) event_note_child_started(slot, getpid()); child_main(0, 0); /* NOTREACHED */ + ap_assert(0); + return -1; } if ((pid = fork()) == -1) { @@ -2642,8 +2644,10 @@ static int make_child(server_rec * s, int slot, int bucket) apr_signal(SIGTERM, just_die); child_main(slot, bucket); /* NOTREACHED */ + ap_assert(0); + return -1; } - /* else */ + if (ap_scoreboard_image->parent[slot].pid != 0) { /* This new child process is squatting on the scoreboard * entry owned by an exiting child process, which cannot diff --git a/server/mpm/eventopt/eventopt.c b/server/mpm/eventopt/eventopt.c index f1089257bc..f58aa8378f 100644 --- a/server/mpm/eventopt/eventopt.c +++ b/server/mpm/eventopt/eventopt.c @@ -2426,6 +2426,8 @@ static int make_child(server_rec * s, int slot, int bucket) event_note_child_started(slot, getpid()); child_main(0, 0); /* NOTREACHED */ + ap_assert(0); + return -1; } if ((pid = fork()) == -1) { @@ -2464,8 +2466,10 @@ static int make_child(server_rec * s, int slot, int bucket) apr_signal(SIGTERM, just_die); child_main(slot, bucket); /* NOTREACHED */ + ap_assert(0); + return -1; } - /* else */ + if (ap_scoreboard_image->parent[slot].pid != 0) { /* This new child process is squatting on the scoreboard * entry owned by an exiting child process, which cannot diff --git a/server/mpm/prefork/prefork.c b/server/mpm/prefork/prefork.c index 010ac93d93..6fa52b1dfa 100644 --- a/server/mpm/prefork/prefork.c +++ b/server/mpm/prefork/prefork.c @@ -772,6 +772,8 @@ static int make_child(server_rec *s, int slot, int bucket) prefork_note_child_started(slot, getpid()); child_main(slot, bucket); /* NOTREACHED */ + ap_assert(0); + return -1; } (void) ap_update_child_status_from_indexes(slot, 0, SERVER_STARTING, diff --git a/server/mpm/worker/worker.c b/server/mpm/worker/worker.c index f2c235efc6..acc8b1b688 100644 --- a/server/mpm/worker/worker.c +++ b/server/mpm/worker/worker.c @@ -1415,6 +1415,8 @@ static int make_child(server_rec *s, int slot, int bucket) worker_note_child_started(slot, getpid()); child_main(0, 0); /* NOTREACHED */ + ap_assert(0); + return -1; } if ((pid = fork()) == -1) { @@ -1452,8 +1454,10 @@ static int make_child(server_rec *s, int slot, int bucket) apr_signal(SIGTERM, just_die); child_main(slot, bucket); /* NOTREACHED */ + ap_assert(0); + return -1; } - /* else */ + if (ap_scoreboard_image->parent[slot].pid != 0) { /* This new child process is squatting on the scoreboard * entry owned by an exiting child process, which cannot