]> granicus.if.org Git - apache/commitdiff
don't use what could have been freed...
authorJim Jagielski <jim@apache.org>
Tue, 15 Oct 2013 20:02:30 +0000 (20:02 +0000)
committerJim Jagielski <jim@apache.org>
Tue, 15 Oct 2013 20:02:30 +0000 (20:02 +0000)
git-svn-id: https://svn.apache.org/repos/asf/httpd/httpd/trunk@1532507 13f79535-47bb-0310-9956-ffa450edef68

modules/proxy/proxy_util.c

index 8b04c20c32e78d0c1142d22ebc6c417daf8edba3..3faf2ff4794efd0254df1109a29118df3956d2d4 100644 (file)
@@ -1218,11 +1218,11 @@ PROXY_DECLARE(apr_status_t) ap_proxy_share_balancer(proxy_balancer *balancer,
     } else {
         action = "re-using";
     }
+    balancer->s = shm;
+    balancer->s->index = i;
     ap_log_error(APLOG_MARK, APLOG_DEBUG, 0, ap_server_conf, APLOGNO(02337)
                  "%s shm[%d] (0x%pp) for %s", action, i, (void *)shm,
                  balancer->s->name);
-    balancer->s = shm;
-    balancer->s->index = i;
     /* the below should always succeed */
     lbmethod = ap_lookup_provider(PROXY_LBMETHOD, balancer->s->lbpname, "0");
     if (lbmethod) {
@@ -1731,12 +1731,11 @@ PROXY_DECLARE(apr_status_t) ap_proxy_share_worker(proxy_worker *worker, proxy_wo
     } else {
         action = "re-using";
     }
+    worker->s = shm;
+    worker->s->index = i;
     ap_log_error(APLOG_MARK, APLOG_DEBUG, 0, ap_server_conf, APLOGNO(02338)
                  "%s shm[%d] (0x%pp) for worker: %s", action, i, (void *)shm,
                  ap_proxy_worker_name(NULL, worker));
-
-    worker->s = shm;
-    worker->s->index = i;
     return APR_SUCCESS;
 }