From e3c204392a01870ecc9e8f3b2aa06b2b45306b5a Mon Sep 17 00:00:00 2001 From: Dan Sinclair Date: Wed, 28 Mar 2018 18:28:45 +0000 Subject: Use ByteStringView in parsers This CL converts the CPDF_SimpleParser to accept a ByteStringView. Several of the callers of SimpleParser are also updated to use a ByteStringView instead of . Change-Id: Ic2df3a06f92e77b53745a0419b44368142f9d8e6 Reviewed-on: https://pdfium-review.googlesource.com/29351 Commit-Queue: dsinclair Reviewed-by: Tom Sepez --- core/fpdfapi/font/cpdf_cidfont.cpp | 2 +- core/fpdfapi/font/cpdf_cmap.cpp | 4 ++-- core/fpdfapi/font/cpdf_cmap.h | 2 +- core/fpdfapi/font/cpdf_tounicodemap.cpp | 2 +- 4 files changed, 5 insertions(+), 5 deletions(-) (limited to 'core/fpdfapi/font') diff --git a/core/fpdfapi/font/cpdf_cidfont.cpp b/core/fpdfapi/font/cpdf_cidfont.cpp index f17af41eda..4a96b0abcb 100644 --- a/core/fpdfapi/font/cpdf_cidfont.cpp +++ b/core/fpdfapi/font/cpdf_cidfont.cpp @@ -376,7 +376,7 @@ bool CPDF_CIDFont::Load() { auto pAcc = pdfium::MakeRetain(pStream); pAcc->LoadAllDataFiltered(); m_pCMap = pdfium::MakeRetain(); - m_pCMap->LoadEmbedded(pAcc->GetData(), pAcc->GetSize()); + m_pCMap->LoadEmbedded(pAcc->GetDataView()); } else { return false; } diff --git a/core/fpdfapi/font/cpdf_cmap.cpp b/core/fpdfapi/font/cpdf_cmap.cpp index a654fcced3..e82e86b474 100644 --- a/core/fpdfapi/font/cpdf_cmap.cpp +++ b/core/fpdfapi/font/cpdf_cmap.cpp @@ -290,10 +290,10 @@ void CPDF_CMap::LoadPredefined(CPDF_CMapManager* pMgr, m_bLoaded = true; } -void CPDF_CMap::LoadEmbedded(const uint8_t* pData, uint32_t size) { +void CPDF_CMap::LoadEmbedded(const ByteStringView& data) { m_DirectCharcodeToCIDTable = std::vector(65536); CPDF_CMapParser parser(this); - CPDF_SimpleParser syntax(pData, size); + CPDF_SimpleParser syntax(data); while (1) { ByteStringView word = syntax.GetWord(); if (word.IsEmpty()) { diff --git a/core/fpdfapi/font/cpdf_cmap.h b/core/fpdfapi/font/cpdf_cmap.h index 98a77286d0..3ad74ca187 100644 --- a/core/fpdfapi/font/cpdf_cmap.h +++ b/core/fpdfapi/font/cpdf_cmap.h @@ -53,7 +53,7 @@ class CPDF_CMap : public Retainable { void LoadPredefined(CPDF_CMapManager* pMgr, const ByteString& name, bool bPromptCJK); - void LoadEmbedded(const uint8_t* pData, uint32_t dwSize); + void LoadEmbedded(const ByteStringView& data); bool IsLoaded() const { return m_bLoaded; } bool IsVertWriting() const { return m_bVertical; } diff --git a/core/fpdfapi/font/cpdf_tounicodemap.cpp b/core/fpdfapi/font/cpdf_tounicodemap.cpp index 0b746d7bfc..88904f27f5 100644 --- a/core/fpdfapi/font/cpdf_tounicodemap.cpp +++ b/core/fpdfapi/font/cpdf_tounicodemap.cpp @@ -126,7 +126,7 @@ void CPDF_ToUnicodeMap::Load(CPDF_Stream* pStream) { CIDSet cid_set = CIDSET_UNKNOWN; auto pAcc = pdfium::MakeRetain(pStream); pAcc->LoadAllDataFiltered(); - CPDF_SimpleParser parser(pAcc->GetData(), pAcc->GetSize()); + CPDF_SimpleParser parser(pAcc->GetDataView()); while (1) { ByteStringView word = parser.GetWord(); if (word.IsEmpty()) { -- cgit v1.2.3