summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorDan Sinclair <dsinclair@chromium.org>2018-03-28 17:02:46 +0000
committerChromium commit bot <commit-bot@chromium.org>2018-03-28 17:02:46 +0000
commit14094f22d9a7bfde8673689218a88d6feb02f3ee (patch)
treea4a2016b9984b50e80680a182f52d41b58e8894e
parent8eac5ad73918818569859cd0453a1d5a44a1f81b (diff)
downloadpdfium-14094f22d9a7bfde8673689218a88d6feb02f3ee.tar.xz
Remove ByteString PDF_NameDecode
This CL removes the ByteString version of PDF_NameDecode and forces the callers to use the ByteStringView variant. Change-Id: I5a955d8e909e2045ee45843af54b23e98abe00ed Reviewed-on: https://pdfium-review.googlesource.com/29350 Reviewed-by: Tom Sepez <tsepez@chromium.org> Commit-Queue: dsinclair <dsinclair@chromium.org>
-rw-r--r--core/fpdfapi/parser/cpdf_syntax_parser.cpp15
-rw-r--r--core/fpdfapi/parser/fpdf_parser_decode.h1
-rw-r--r--core/fpdfapi/parser/fpdf_parser_utility.cpp4
-rw-r--r--core/fpdfdoc/cpdf_defaultappearance.cpp2
-rw-r--r--core/fpdfdoc/cpdf_interform.cpp2
-rw-r--r--core/fpdfdoc/cpvt_generateap.cpp2
-rw-r--r--fpdfsdk/formfiller/cba_fontmap.cpp3
7 files changed, 11 insertions, 18 deletions
diff --git a/core/fpdfapi/parser/cpdf_syntax_parser.cpp b/core/fpdfapi/parser/cpdf_syntax_parser.cpp
index 624bde4ab3..8b8e59fa96 100644
--- a/core/fpdfapi/parser/cpdf_syntax_parser.cpp
+++ b/core/fpdfapi/parser/cpdf_syntax_parser.cpp
@@ -420,23 +420,22 @@ std::unique_ptr<CPDF_Object> CPDF_SyntaxParser::GetObjectBodyInternal(
std::unique_ptr<CPDF_Dictionary> pDict =
pdfium::MakeUnique<CPDF_Dictionary>(m_pPool);
while (1) {
- ByteString key = GetNextWord(nullptr);
- if (key.IsEmpty())
+ ByteString word = GetNextWord(nullptr);
+ if (word.IsEmpty())
return nullptr;
- FX_FILESIZE SavedPos = m_Pos - key.GetLength();
- if (key == ">>")
+ FX_FILESIZE SavedPos = m_Pos - word.GetLength();
+ if (word == ">>")
break;
- if (key == "endobj") {
+ if (word == "endobj") {
m_Pos = SavedPos;
break;
}
- if (key[0] != '/')
+ if (word[0] != '/')
continue;
- key = PDF_NameDecode(key);
-
+ ByteString key = PDF_NameDecode(word.AsStringView());
if (key.IsEmpty() && parse_type == ParseType::kLoose)
continue;
diff --git a/core/fpdfapi/parser/fpdf_parser_decode.h b/core/fpdfapi/parser/fpdf_parser_decode.h
index 6650b68c06..ab819c4832 100644
--- a/core/fpdfapi/parser/fpdf_parser_decode.h
+++ b/core/fpdfapi/parser/fpdf_parser_decode.h
@@ -18,7 +18,6 @@ class CPDF_Dictionary;
extern const uint16_t PDFDocEncoding[256];
ByteString PDF_NameDecode(const ByteStringView& orig);
-ByteString PDF_NameDecode(const ByteString& orig);
ByteString PDF_NameEncode(const ByteString& orig);
ByteString PDF_EncodeString(const ByteString& src, bool bHex);
WideString PDF_DecodeText(const uint8_t* pData, uint32_t size);
diff --git a/core/fpdfapi/parser/fpdf_parser_utility.cpp b/core/fpdfapi/parser/fpdf_parser_utility.cpp
index 45284a4ceb..c486a76706 100644
--- a/core/fpdfapi/parser/fpdf_parser_utility.cpp
+++ b/core/fpdfapi/parser/fpdf_parser_utility.cpp
@@ -110,10 +110,6 @@ ByteString PDF_NameDecode(const ByteStringView& bstr) {
return result;
}
-ByteString PDF_NameDecode(const ByteString& orig) {
- return orig.Contains("#") ? PDF_NameDecode(orig.AsStringView()) : orig;
-}
-
ByteString PDF_NameEncode(const ByteString& orig) {
uint8_t* src_buf = (uint8_t*)orig.c_str();
int src_len = orig.GetLength();
diff --git a/core/fpdfdoc/cpdf_defaultappearance.cpp b/core/fpdfdoc/cpdf_defaultappearance.cpp
index ba0679a19a..cae553a7c2 100644
--- a/core/fpdfdoc/cpdf_defaultappearance.cpp
+++ b/core/fpdfdoc/cpdf_defaultappearance.cpp
@@ -32,7 +32,7 @@ ByteString CPDF_DefaultAppearance::GetFont(float* fFontSize) {
csFontNameTag.Delete(0, 1);
*fFontSize = FX_atof(syntax.GetWord());
}
- return PDF_NameDecode(csFontNameTag);
+ return PDF_NameDecode(csFontNameTag.AsStringView());
}
bool CPDF_DefaultAppearance::HasColor() {
diff --git a/core/fpdfdoc/cpdf_interform.cpp b/core/fpdfdoc/cpdf_interform.cpp
index ac15aa66cc..c16c36ef3d 100644
--- a/core/fpdfdoc/cpdf_interform.cpp
+++ b/core/fpdfdoc/cpdf_interform.cpp
@@ -101,7 +101,7 @@ void InitDict(CPDF_Dictionary*& pFormDict, CPDF_Document* pDocument) {
CPDF_Font* GetFont(CPDF_Dictionary* pFormDict,
CPDF_Document* pDocument,
const ByteString& csNameTag) {
- ByteString csAlias = PDF_NameDecode(csNameTag);
+ ByteString csAlias = PDF_NameDecode(csNameTag.AsStringView());
if (!pFormDict || csAlias.IsEmpty())
return nullptr;
diff --git a/core/fpdfdoc/cpvt_generateap.cpp b/core/fpdfdoc/cpvt_generateap.cpp
index e2fbcc9720..4138b21a6b 100644
--- a/core/fpdfdoc/cpvt_generateap.cpp
+++ b/core/fpdfdoc/cpvt_generateap.cpp
@@ -925,7 +925,7 @@ void CPVT_GenerateAP::GenerateFormAP(Type type,
CPDF_SimpleParser syntax(DA.AsStringView());
syntax.FindTagParamFromStart("Tf", 2);
ByteString sFontName(syntax.GetWord());
- sFontName = PDF_NameDecode(sFontName);
+ sFontName = PDF_NameDecode(sFontName.AsStringView());
if (sFontName.IsEmpty())
return;
diff --git a/fpdfsdk/formfiller/cba_fontmap.cpp b/fpdfsdk/formfiller/cba_fontmap.cpp
index d675676616..8e4ac469a5 100644
--- a/fpdfsdk/formfiller/cba_fontmap.cpp
+++ b/fpdfsdk/formfiller/cba_fontmap.cpp
@@ -219,8 +219,7 @@ CPDF_Font* CBA_FontMap::GetAnnotDefaultFont(ByteString* sAlias) {
CPDF_SimpleParser syntax(sDA.AsStringView());
syntax.FindTagParamFromStart("Tf", 2);
- ByteString sFontName(syntax.GetWord());
- ByteString sDecodedFontName = PDF_NameDecode(sFontName);
+ ByteString sDecodedFontName = PDF_NameDecode(syntax.GetWord());
*sAlias = sDecodedFontName.Right(sDecodedFontName.GetLength() - 1);
CPDF_Dictionary* pFontDict = nullptr;