]> git.ipfire.org Git - thirdparty/squid.git/commitdiff
Shared memory corruption when storing multi-slot (>32KB) shm misses.
authorAlex Rousskov <rousskov@measurement-factory.com>
Mon, 25 Apr 2016 23:04:05 +0000 (17:04 -0600)
committerAlex Rousskov <rousskov@measurement-factory.com>
Mon, 25 Apr 2016 23:04:05 +0000 (17:04 -0600)
This is a regression I introduced in trunk r14584 (Bug 7: Update
cached entries on 304 responses).

src/MemStore.cc

index 259fbec675ac6345458e27b2d9e56cfd9d10c588..c8db5ca52f5c7198d3ea11bcfab8348ac7610e29 100644 (file)
@@ -777,6 +777,7 @@ MemStore::nextAppendableSlice(const sfileno fileNo, sfileno &sliceOffset)
             slice.next = sliceOffset = reserveSapForWriting(page);
             extras->items[sliceOffset].page = page;
             debugs(20, 7, "entry " << fileNo << " new slice: " << sliceOffset);
+            continue; // to get and return the slice at the new sliceOffset
         }
 
         return slice;