Browse Source

Merge pull request #727 from AustinSchuh/arena_bounds_fix

Handled blocks being too small in arena.cc
Feng Xiao 10 năm trước cách đây
mục cha
commit
0e5686a707
1 tập tin đã thay đổi với 3 bổ sung0 xóa
  1. 3 0
      src/google/protobuf/arena.cc

+ 3 - 0
src/google/protobuf/arena.cc

@@ -61,6 +61,9 @@ void Arena::Init() {
   cleanup_list_ = 0;
 
   if (options_.initial_block != NULL && options_.initial_block_size > 0) {
+    GOOGLE_CHECK_GE(options_.initial_block_size, sizeof(Block))
+        << ": Initial block size too small for header.";
+
     // Add first unowned block to list.
     Block* first_block = reinterpret_cast<Block*>(options_.initial_block);
     first_block->size = options_.initial_block_size;