]> granicus.if.org Git - apache/commitdiff
* modules/generators/mod_cgid.c (cgid_init): Fix GCC strict-aliasing
authorJoe Orton <jorton@apache.org>
Fri, 12 Nov 2004 10:16:01 +0000 (10:16 +0000)
committerJoe Orton <jorton@apache.org>
Fri, 12 Nov 2004 10:16:01 +0000 (10:16 +0000)
warning.

git-svn-id: https://svn.apache.org/repos/asf/httpd/httpd/trunk@105753 13f79535-47bb-0310-9956-ffa450edef68

modules/generators/mod_cgid.c

index 218d8dd1428c4fca4c6a15b81b4f27974b8caa5b..43c0491e02007d81d2fb676977808006f0f3f006 100644 (file)
@@ -816,12 +816,13 @@ static int cgid_init(apr_pool_t *p, apr_pool_t *plog, apr_pool_t *ptemp,
     const char *userdata_key = "cgid_init";
     module **m;
     int ret = OK;
+    void *data;
 
     root_server = main_server;
     root_pool = p;
 
-    apr_pool_userdata_get((void **)&procnew, userdata_key, main_server->process->pool);
-    if (!procnew) {
+    apr_pool_userdata_get(&data, userdata_key, main_server->process->pool);
+    if (!data) {
         first_time = 1;
         procnew = apr_pcalloc(main_server->process->pool, sizeof(*procnew));
         procnew->pid = -1;
@@ -829,6 +830,9 @@ static int cgid_init(apr_pool_t *p, apr_pool_t *plog, apr_pool_t *ptemp,
         apr_pool_userdata_set((const void *)procnew, userdata_key,
                      apr_pool_cleanup_null, main_server->process->pool);
     }
+    else {
+        procnew = data;
+    }
 
     if (!first_time) {
         total_modules = 0;