Return vector from CPDF_Stream::ReadRawData()

Rename method to ReadAllRawData() to indicate that a size parameter
is not required as input.

Change-Id: Id150f2074f92fae3664f752b95948bc99d7f6b19
Reviewed-on: https://pdfium-review.googlesource.com/c/pdfium/+/101071
Reviewed-by: Lei Zhang <thestig@chromium.org>
Commit-Queue: Tom Sepez <tsepez@chromium.org>
diff --git a/core/fpdfapi/parser/cpdf_stream.cpp b/core/fpdfapi/parser/cpdf_stream.cpp
index bdcb5f6..fa08ffa 100644
--- a/core/fpdfapi/parser/cpdf_stream.cpp
+++ b/core/fpdfapi/parser/cpdf_stream.cpp
@@ -137,10 +137,17 @@
            static_cast<size_t>(stream->tellp())});
 }
 
-bool CPDF_Stream::ReadRawData(pdfium::span<uint8_t> buffer) const {
+DataVector<uint8_t> CPDF_Stream::ReadAllRawData() const {
   CHECK(IsFileBased());
-  return absl::get<RetainPtr<IFX_SeekableReadStream>>(data_)->ReadBlockAtOffset(
-      buffer, 0);
+
+  DataVector<uint8_t> result(GetRawSize());
+  DCHECK(!result.empty());
+
+  auto underlying_stream = absl::get<RetainPtr<IFX_SeekableReadStream>>(data_);
+  if (!underlying_stream->ReadBlockAtOffset(result, 0))
+    return DataVector<uint8_t>();
+
+  return result;
 }
 
 bool CPDF_Stream::HasFilter() const {
diff --git a/core/fpdfapi/parser/cpdf_stream.h b/core/fpdfapi/parser/cpdf_stream.h
index 5066880..c683cba 100644
--- a/core/fpdfapi/parser/cpdf_stream.h
+++ b/core/fpdfapi/parser/cpdf_stream.h
@@ -56,7 +56,7 @@
                           RetainPtr<CPDF_Dictionary> pDict);
 
   // Can only be called when a stream is not memory-based.
-  bool ReadRawData(pdfium::span<uint8_t> buffer) const;
+  DataVector<uint8_t> ReadAllRawData() const;
 
   bool IsUninitialized() const { return data_.index() == 0; }
   bool IsFileBased() const { return data_.index() == 1; }
diff --git a/core/fpdfapi/parser/cpdf_stream_acc.cpp b/core/fpdfapi/parser/cpdf_stream_acc.cpp
index 3f82237..89902ec 100644
--- a/core/fpdfapi/parser/cpdf_stream_acc.cpp
+++ b/core/fpdfapi/parser/cpdf_stream_acc.cpp
@@ -168,10 +168,5 @@
 DataVector<uint8_t> CPDF_StreamAcc::ReadRawStream() const {
   DCHECK(m_pStream);
   DCHECK(m_pStream->IsFileBased());
-
-  DataVector<uint8_t> result(m_pStream->GetRawSize());
-  DCHECK(!result.empty());
-  if (!m_pStream->ReadRawData(result))
-    return DataVector<uint8_t>();
-  return result;
+  return m_pStream->ReadAllRawData();
 }