From ed176992eb7ddbb0fee7b79625501df06f8ccf93 Mon Sep 17 00:00:00 2001 From: Lei Zhang Date: Mon, 13 Aug 2018 23:19:29 +0000 Subject: Make CFX_ReadOnlyMemoryStream take a span. Change-Id: Id097320ab2d9b5d1579582e5797e29c701499501 Reviewed-on: https://pdfium-review.googlesource.com/39991 Commit-Queue: Lei Zhang Reviewed-by: Tom Sepez --- xfa/fxfa/cxfa_ffdoc.cpp | 4 ++-- xfa/fxfa/parser/cxfa_document_parser.cpp | 4 ++-- xfa/fxfa/parser/cxfa_node.cpp | 9 ++++----- xfa/fxfa/parser/cxfa_xmllocale.cpp | 3 +-- 4 files changed, 9 insertions(+), 11 deletions(-) (limited to 'xfa') diff --git a/xfa/fxfa/cxfa_ffdoc.cpp b/xfa/fxfa/cxfa_ffdoc.cpp index 7852d30036..44c1b7912b 100644 --- a/xfa/fxfa/cxfa_ffdoc.cpp +++ b/xfa/fxfa/cxfa_ffdoc.cpp @@ -215,8 +215,8 @@ RetainPtr CXFA_FFDoc::GetPDFNamedImage( auto pAcc = pdfium::MakeRetain(pStream); pAcc->LoadAllDataFiltered(); - auto pImageFileRead = pdfium::MakeRetain( - pAcc->GetData(), pAcc->GetSize()); + auto pImageFileRead = + pdfium::MakeRetain(pAcc->GetSpan()); RetainPtr pDibSource = XFA_LoadImageFromBuffer( pImageFileRead, FXCODEC_IMAGE_UNKNOWN, iImageXDpi, iImageYDpi); diff --git a/xfa/fxfa/parser/cxfa_document_parser.cpp b/xfa/fxfa/parser/cxfa_document_parser.cpp index 5cb08863c8..d0f137da7c 100644 --- a/xfa/fxfa/parser/cxfa_document_parser.cpp +++ b/xfa/fxfa/parser/cxfa_document_parser.cpp @@ -332,8 +332,8 @@ bool CXFA_DocumentParser::Parse( } CFX_XMLNode* CXFA_DocumentParser::ParseXMLData(const ByteString& wsXML) { - auto pStream = pdfium::MakeRetain( - wsXML.raw_str(), wsXML.GetLength()); + auto pStream = + pdfium::MakeRetain(wsXML.AsRawSpan()); xml_doc_ = LoadXML(pStream); if (!xml_doc_) return nullptr; diff --git a/xfa/fxfa/parser/cxfa_node.cpp b/xfa/fxfa/parser/cxfa_node.cpp index 06bbb0936a..a60e66584b 100644 --- a/xfa/fxfa/parser/cxfa_node.cpp +++ b/xfa/fxfa/parser/cxfa_node.cpp @@ -29,6 +29,7 @@ #include "third_party/base/compiler_specific.h" #include "third_party/base/logging.h" #include "third_party/base/ptr_util.h" +#include "third_party/base/span.h" #include "third_party/base/stl_util.h" #include "xfa/fde/cfde_textout.h" #include "xfa/fgas/font/cfgas_fontmgr.h" @@ -199,7 +200,6 @@ RetainPtr XFA_LoadImageData(CXFA_FFDoc* pDoc, return nullptr; FXCODEC_IMAGE_TYPE type = XFA_GetImageType(pImage->GetContentType()); - ByteString bsContent; std::vector buffer; RetainPtr pImageFileRead; if (wsImage.GetLength() > 0) { @@ -209,13 +209,12 @@ RetainPtr XFA_LoadImageData(CXFA_FFDoc* pDoc, buffer.resize(bsData.GetLength()); int32_t iRead = XFA_Base64Decode(bsData.c_str(), buffer.data()); if (iRead > 0) { - pImageFileRead = - pdfium::MakeRetain(buffer.data(), iRead); + pImageFileRead = pdfium::MakeRetain( + pdfium::make_span(buffer.data(), iRead)); } } else { - bsContent = wsImage.ToDefANSI(); pImageFileRead = pdfium::MakeRetain( - bsContent.raw_str(), bsContent.GetLength()); + wsImage.ToDefANSI().AsRawSpan()); } } else { WideString wsURL = wsHref; diff --git a/xfa/fxfa/parser/cxfa_xmllocale.cpp b/xfa/fxfa/parser/cxfa_xmllocale.cpp index 2806a084d6..20557dd59c 100644 --- a/xfa/fxfa/parser/cxfa_xmllocale.cpp +++ b/xfa/fxfa/parser/cxfa_xmllocale.cpp @@ -31,8 +31,7 @@ constexpr wchar_t kCurrencySymbol[] = L"currencySymbol"; // static std::unique_ptr CXFA_XMLLocale::Create( pdfium::span data) { - auto stream = - pdfium::MakeRetain(data.data(), data.size()); + auto stream = pdfium::MakeRetain(data); CFX_XMLParser parser(stream); auto doc = parser.Parse(); if (!doc) -- cgit v1.2.3