summaryrefslogtreecommitdiff
path: root/core/fpdfapi/page/cpdf_streamcontentparser.cpp
diff options
context:
space:
mode:
authorTom Sepez <tsepez@chromium.org>2018-06-19 17:33:32 +0000
committerChromium commit bot <commit-bot@chromium.org>2018-06-19 17:33:32 +0000
commite005dc33c31a2e701e1af3a0a3e5775cabbf1ddd (patch)
tree6cf7623219078464910ee438311e24121c8af2a0 /core/fpdfapi/page/cpdf_streamcontentparser.cpp
parented1c58049f0c164969946b6ad0ff06d952ab1949 (diff)
downloadpdfium-chromium/3466.tar.xz
Move fxcrt::{Byte,Wide}Strings with std::move().chromium/3466
Remove some string copies in barcode that were noticed whilst looking for moves. Change-Id: Ieda34d00f633576ba1f0dca283dcdabfb36f236c Reviewed-on: https://pdfium-review.googlesource.com/35410 Reviewed-by: dsinclair <dsinclair@chromium.org> Reviewed-by: Tom Sepez <tsepez@chromium.org> Commit-Queue: Tom Sepez <tsepez@chromium.org>
Diffstat (limited to 'core/fpdfapi/page/cpdf_streamcontentparser.cpp')
-rw-r--r--core/fpdfapi/page/cpdf_streamcontentparser.cpp18
1 files changed, 10 insertions, 8 deletions
diff --git a/core/fpdfapi/page/cpdf_streamcontentparser.cpp b/core/fpdfapi/page/cpdf_streamcontentparser.cpp
index 0cc81f1e9b..2fbb73b6b2 100644
--- a/core/fpdfapi/page/cpdf_streamcontentparser.cpp
+++ b/core/fpdfapi/page/cpdf_streamcontentparser.cpp
@@ -184,7 +184,7 @@ void ReplaceAbbr(CPDF_Object* pObj) {
if (!fullname.IsEmpty()) {
AbbrReplacementOp op;
op.is_replace_key = true;
- op.key = key;
+ op.key = std::move(key);
op.replacement = fullname;
replacements.push_back(op);
key = fullname;
@@ -606,9 +606,8 @@ void CPDF_StreamContentParser::Handle_BeginMarkedContent_Dictionary() {
return;
bDirect = false;
}
- if (const CPDF_Dictionary* pDict = pProperty->AsDictionary()) {
- m_CurContentMark.AddMark(tag, pDict, bDirect);
- }
+ if (const CPDF_Dictionary* pDict = pProperty->AsDictionary())
+ m_CurContentMark.AddMark(std::move(tag), pDict, bDirect);
}
void CPDF_StreamContentParser::Handle_BeginImage() {
@@ -755,20 +754,23 @@ void CPDF_StreamContentParser::Handle_ExecuteXObject() {
if (pXObject->GetDict())
type = pXObject->GetDict()->GetStringFor("Subtype");
+ if (type == "Form") {
+ AddForm(pXObject);
+ return;
+ }
+
if (type == "Image") {
CPDF_ImageObject* pObj = pXObject->IsInline()
? AddImage(std::unique_ptr<CPDF_Stream>(
ToStream(pXObject->Clone())))
: AddImage(pXObject->GetObjNum());
- m_LastImageName = name;
+ m_LastImageName = std::move(name);
if (pObj) {
m_pLastImage = pObj->GetImage();
if (m_pLastImage->IsMask())
m_pObjectHolder->AddImageMaskBoundingBox(pObj->GetRect());
}
- } else if (type == "Form") {
- AddForm(pXObject);
}
}
@@ -1307,7 +1309,7 @@ void CPDF_StreamContentParser::Handle_ShowText_Positioning() {
ByteString str = pObj->GetString();
if (str.IsEmpty())
continue;
- strs[iSegment] = str;
+ strs[iSegment] = std::move(str);
kernings[iSegment++] = 0;
} else {
float num = pObj->GetNumber();