2 threads both trying to remove the same URL at the same time.
git-svn-id: https://svn.apache.org/repos/asf/httpd/httpd/trunk@93378
13f79535-47bb-0310-9956-
ffa450edef68
if (sconf->lock) {
apr_thread_mutex_lock(sconf->lock);
}
- apr_hash_set(sconf->cacheht, obj->key, strlen(obj->key), NULL);
+ /*
+ * RACE .. some one might have just deleted this object .. so test
+ * if it is still around
+ */
+ if (obj) {
+ apr_hash_set(sconf->cacheht, obj->key, strlen(obj->key), NULL);
+ cleanup_cache_object(obj);
+ h->cache_obj = NULL;
+ }
if (sconf->lock) {
apr_thread_mutex_unlock(sconf->lock);
- }
-
- cleanup_cache_object(obj);
+ }
return OK;
}