]> git.ipfire.org Git - thirdparty/apache/httpd.git/commitdiff
Remove shared memory before creating it. (That only removes the file!).
authorJean-Frederic Clere <jfclere@apache.org>
Fri, 4 Aug 2006 11:44:01 +0000 (11:44 +0000)
committerJean-Frederic Clere <jfclere@apache.org>
Fri, 4 Aug 2006 11:44:01 +0000 (11:44 +0000)
git-svn-id: https://svn.apache.org/repos/asf/httpd/httpd/branches/httpd-proxy-scoreboard@428700 13f79535-47bb-0310-9956-ffa450edef68

modules/mem/sharedmem_util.c

index b03cbf35eae6254853ef39538e69d389aebe8fcb..6789334b1249a337e7c88e8754bbe7d765bfd373 100644 (file)
@@ -210,12 +210,15 @@ static apr_status_t ap_slotmem_create(ap_slotmem_t **new, const char *name, apr_
         }
         ptr = ptr +  sizeof(desc);
     } else  {
-        if (name && name[0] != ':')
+        if (name && name[0] != ':') {
+            apr_shm_remove(fname, globalpool);
             rv = apr_shm_create(&res->shm, item_size * item_num + sizeof(struct sharedslotdesc), fname, globalpool);
-        else
+        } else {
             rv = apr_shm_create(&res->shm, item_size * item_num + sizeof(struct sharedslotdesc), NULL, globalpool);
-        if (rv != APR_SUCCESS)
+        }
+        if (rv != APR_SUCCESS) {
             return rv;
+        }
         ptr = apr_shm_baseaddr_get(res->shm);
         desc.item_size = item_size;
         desc.item_num = item_num;