summaryrefslogtreecommitdiff
path: root/core/fpdfapi/edit
diff options
context:
space:
mode:
Diffstat (limited to 'core/fpdfapi/edit')
-rw-r--r--core/fpdfapi/edit/cpdf_creator.cpp8
-rw-r--r--core/fpdfapi/edit/cpdf_encryptor.cpp6
-rw-r--r--core/fpdfapi/edit/cpdf_flateencoder.h6
3 files changed, 9 insertions, 11 deletions
diff --git a/core/fpdfapi/edit/cpdf_creator.cpp b/core/fpdfapi/edit/cpdf_creator.cpp
index 8a9eb5493e..5e3f9ee592 100644
--- a/core/fpdfapi/edit/cpdf_creator.cpp
+++ b/core/fpdfapi/edit/cpdf_creator.cpp
@@ -21,6 +21,7 @@
#include "core/fpdfapi/parser/fpdf_parser_utility.h"
#include "core/fxcrt/fx_extension.h"
#include "core/fxcrt/fx_random.h"
+#include "third_party/base/span.h"
namespace {
@@ -164,8 +165,7 @@ bool CPDF_Creator::WriteStream(const CPDF_Object* pStream,
uint32_t objnum,
CPDF_CryptoHandler* pCrypto) {
CPDF_FlateEncoder encoder(pStream->AsStream(), pStream != m_pMetadata);
- CPDF_Encryptor encryptor(
- pCrypto, objnum, pdfium::make_span(encoder.GetData(), encoder.GetSize()));
+ CPDF_Encryptor encryptor(pCrypto, objnum, encoder.GetSpan());
if (static_cast<uint32_t>(encoder.GetDict()->GetIntegerFor("Length")) !=
encryptor.GetSpan().size()) {
encoder.CloneDict();
@@ -238,9 +238,7 @@ bool CPDF_Creator::WriteDirectObj(uint32_t objnum,
}
case CPDF_Object::STREAM: {
CPDF_FlateEncoder encoder(pObj->AsStream(), true);
- CPDF_Encryptor encryptor(
- GetCryptoHandler(), objnum,
- pdfium::make_span(encoder.GetData(), encoder.GetSize()));
+ CPDF_Encryptor encryptor(GetCryptoHandler(), objnum, encoder.GetSpan());
if (static_cast<uint32_t>(encoder.GetDict()->GetIntegerFor("Length")) !=
encryptor.GetSpan().size()) {
encoder.CloneDict();
diff --git a/core/fpdfapi/edit/cpdf_encryptor.cpp b/core/fpdfapi/edit/cpdf_encryptor.cpp
index fd969b8b2c..61976186d2 100644
--- a/core/fpdfapi/edit/cpdf_encryptor.cpp
+++ b/core/fpdfapi/edit/cpdf_encryptor.cpp
@@ -18,11 +18,9 @@ CPDF_Encryptor::CPDF_Encryptor(CPDF_CryptoHandler* pHandler,
return;
}
- uint32_t buf_size =
- pHandler->EncryptGetSize(objnum, 0, src_data.data(), src_data.size());
+ uint32_t buf_size = pHandler->EncryptGetSize(objnum, 0, src_data);
m_NewBuf.resize(buf_size);
- pHandler->EncryptContent(objnum, 0, src_data.data(), src_data.size(),
- m_NewBuf.data(),
+ pHandler->EncryptContent(objnum, 0, src_data, m_NewBuf.data(),
buf_size); // Updates |buf_size| with actual.
m_NewBuf.resize(buf_size);
m_Span = m_NewBuf;
diff --git a/core/fpdfapi/edit/cpdf_flateencoder.h b/core/fpdfapi/edit/cpdf_flateencoder.h
index b69b54d93b..05633f6814 100644
--- a/core/fpdfapi/edit/cpdf_flateencoder.h
+++ b/core/fpdfapi/edit/cpdf_flateencoder.h
@@ -14,6 +14,7 @@
#include "core/fxcrt/fx_memory.h"
#include "core/fxcrt/maybe_owned.h"
#include "core/fxcrt/retain_ptr.h"
+#include "third_party/base/span.h"
class CPDF_Stream;
@@ -28,8 +29,9 @@ class CPDF_FlateEncoder {
// Returns |m_pClonedDict| if it is valid. Otherwise returns |m_pDict|.
const CPDF_Dictionary* GetDict() const;
- uint32_t GetSize() const { return m_dwSize; }
- const uint8_t* GetData() const { return m_pData.Get(); }
+ pdfium::span<const uint8_t> GetSpan() const {
+ return pdfium::make_span(m_pData.Get(), m_dwSize);
+ }
private:
uint32_t m_dwSize;