Skip to content

Commit

Permalink
Fix issue #2330 by limiting the vector size that can be reserve'd
Browse files Browse the repository at this point in the history
  • Loading branch information
greg7mdp committed Aug 20, 2024
1 parent 99ee7a7 commit 787ad81
Showing 1 changed file with 1 addition and 1 deletion.
2 changes: 1 addition & 1 deletion libraries/chain/abi_serializer.cpp
Original file line number Diff line number Diff line change
Expand Up @@ -415,7 +415,7 @@ namespace eosio { namespace chain {
fc::raw::unpack(stream, size);
} EOS_RETHROW_EXCEPTIONS( unpack_exception, "Unable to unpack size of array '${p}'", ("p", ctx.get_path_string()) )
vector<fc::variant> vars;
vars.reserve(size);
vars.reserve(std::min(size.value, 1024u)); // limit the maximum size that can be reserved before data is read
auto h1 = ctx.push_to_path( impl::array_index_path_item{} );
for( decltype(size.value) i = 0; i < size; ++i ) {
ctx.set_array_index_of_path_back(i);
Expand Down

0 comments on commit 787ad81

Please sign in to comment.