From 08a3dcd587e53bb1e8c9aae07057d7c58815f2a8 Mon Sep 17 00:00:00 2001 From: Vitaliy Filippov Date: Wed, 24 Sep 2025 14:12:25 +0300 Subject: [PATCH] Prevent vector out-of-bounds in kv alloc_block (from #95) --- src/kv/kv_db.cpp | 3 +++ 1 file changed, 3 insertions(+) diff --git a/src/kv/kv_db.cpp b/src/kv/kv_db.cpp index 2343a3aa..43b0a0d6 100644 --- a/src/kv/kv_db.cpp +++ b/src/kv/kv_db.cpp @@ -630,7 +630,10 @@ uint64_t kv_db_t::alloc_block() { // Allow to reconfigure online if (allocating_blocks.size() > max_allocate_blocks) + { allocating_blocks.erase(allocating_blocks.begin()+allocating_block_pos, allocating_blocks.begin()+allocating_block_pos+1); + allocating_block_pos = allocating_block_pos % allocating_blocks.size(); + } else allocating_blocks[allocating_block_pos].offset = UINT64_MAX; }