Move uint8_t vectors to data partition in xfa/
Change-Id: I4fb14d8ecb4c44cae724b5e121f27926153b614f
Reviewed-on: https://pdfium-review.googlesource.com/c/pdfium/+/68352
Commit-Queue: Tom Sepez <tsepez@chromium.org>
Reviewed-by: Lei Zhang <thestig@chromium.org>
diff --git a/xfa/fgas/font/cfgas_fontmgr.cpp b/xfa/fgas/font/cfgas_fontmgr.cpp
index 96407f3..c537860 100644
--- a/xfa/fgas/font/cfgas_fontmgr.cpp
+++ b/xfa/fgas/font/cfgas_fontmgr.cpp
@@ -735,7 +735,7 @@
FT_ULong dwTag;
FT_ENC_TAG(dwTag, 'n', 'a', 'm', 'e');
- std::vector<uint8_t> table;
+ std::vector<uint8_t, FxAllocAllocator<uint8_t>> table;
unsigned long nLength = 0;
unsigned int error =
FT_Load_Sfnt_Table(pFace->GetRec(), dwTag, 0, nullptr, &nLength);
diff --git a/xfa/fxfa/parser/cxfa_node.cpp b/xfa/fxfa/parser/cxfa_node.cpp
index 05c6061..a1a540d 100644
--- a/xfa/fxfa/parser/cxfa_node.cpp
+++ b/xfa/fxfa/parser/cxfa_node.cpp
@@ -385,9 +385,9 @@
return (x & 128) == 0 ? g_inv_base64[x] : 255;
}
-std::vector<uint8_t> XFA_RemoveBase64Whitespace(
+std::vector<uint8_t, FxAllocAllocator<uint8_t>> XFA_RemoveBase64Whitespace(
pdfium::span<const uint8_t> spStr) {
- std::vector<uint8_t> result;
+ std::vector<uint8_t, FxAllocAllocator<uint8_t>> result;
result.reserve(spStr.size());
for (uint8_t ch : spStr) {
if (GetInvBase64(ch) != 255 || ch == '=')
@@ -396,12 +396,14 @@
return result;
}
-std::vector<uint8_t> XFA_Base64Decode(const ByteString& bsStr) {
- std::vector<uint8_t> result;
+std::vector<uint8_t, FxAllocAllocator<uint8_t>> XFA_Base64Decode(
+ const ByteString& bsStr) {
+ std::vector<uint8_t, FxAllocAllocator<uint8_t>> result;
if (bsStr.IsEmpty())
return result;
- std::vector<uint8_t> buffer = XFA_RemoveBase64Whitespace(bsStr.raw_span());
+ std::vector<uint8_t, FxAllocAllocator<uint8_t>> buffer =
+ XFA_RemoveBase64Whitespace(bsStr.raw_span());
result.reserve(3 * (buffer.size() / 4));
uint32_t dwLimb = 0;
@@ -475,7 +477,10 @@
FXCODEC_IMAGE_TYPE type = XFA_GetImageType(pImage->GetContentType());
ByteString bsData; // Must outlive |pImageFileRead|.
- std::vector<uint8_t> buffer; // Must outlive |pImageFileRead|.
+
+ // Must outlive |pImageFileRead|.
+ std::vector<uint8_t, FxAllocAllocator<uint8_t>> buffer;
+
RetainPtr<IFX_SeekableReadStream> pImageFileRead;
if (wsImage.GetLength() > 0) {
XFA_AttributeValue iEncoding = pImage->GetTransferEncoding();