diff --git a/cpp/src/arrow/filesystem/gcsfs.cc b/cpp/src/arrow/filesystem/gcsfs.cc index beb6c0a89ef..73d599fffa5 100644 --- a/cpp/src/arrow/filesystem/gcsfs.cc +++ b/cpp/src/arrow/filesystem/gcsfs.cc @@ -95,7 +95,8 @@ class GcsInputStream : public arrow::io::InputStream { if (!stream_.status().ok()) { return internal::ToArrowStatus(stream_.status()); } - return arrow::SliceMutableBufferSafe(std::move(buffer), 0, stream_.gcount()); + RETURN_NOT_OK(buffer->Resize(stream_.gcount(), true)); + return buffer; } private: