From dabd0fe2a0b25739cd6dac03d464479735df0c38 Mon Sep 17 00:00:00 2001 From: Alex Rousskov Date: Sat, 19 Dec 2015 01:50:46 +1300 Subject: [PATCH] Fix startup crash with a misconfigured (too-small) shared memory cache Controller condition for allocating MemStore is slightly different from MemStore condition for allocating MemStore::map, resulting in MemStore without a map. Until that discrepancy is fixed, be careful when dereferencing MemStore::map. --- src/MemStore.cc | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/src/MemStore.cc b/src/MemStore.cc index a53ecf6346..d4bc939448 100644 --- a/src/MemStore.cc +++ b/src/MemStore.cc @@ -725,7 +725,7 @@ MemStore::unlink(StoreEntry &e) if (e.mem_obj && e.mem_obj->memCache.index >= 0) { map->freeEntry(e.mem_obj->memCache.index); disconnect(e); - } else { + } else if (map) { // the entry may have been loaded and then disconnected from the cache map->freeEntryByKey(reinterpret_cast(e.key)); } -- 2.47.2