diff --git a/utils/fragmented_temporary_buffer.hh b/utils/fragmented_temporary_buffer.hh index d8714563d1..1553a2bb36 100644 --- a/utils/fragmented_temporary_buffer.hh +++ b/utils/fragmented_temporary_buffer.hh @@ -97,13 +97,13 @@ public: // Creates a fragmented temporary buffer of a specified size, supplied as a parameter. // Max chunk size is limited to 128kb (the same limit as `bytes_stream` has). static fragmented_temporary_buffer allocate_to_fit(size_t data_size) { - constexpr size_t max_fragment_size = 128 * 1024; // 128KB + constexpr size_t max_fragment_size = default_fragment_size; // 128KB - const size_t fragments_count = data_size / max_fragment_size; // number of max-sized fragments - const size_t last_fragment_size = data_size - (fragments_count * max_fragment_size); + const size_t full_fragment_count = data_size / max_fragment_size; // number of max-sized fragments + const size_t last_fragment_size = data_size % max_fragment_size; std::vector> fragments; - for (size_t i = 0; i < fragments_count; ++i) { + for (size_t i = 0; i < full_fragment_count; ++i) { fragments.emplace_back(seastar::temporary_buffer(max_fragment_size)); } fragments.emplace_back(seastar::temporary_buffer(last_fragment_size));