summaryrefslogtreecommitdiff
path: root/fpdfsdk
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 /fpdfsdk
parented1c58049f0c164969946b6ad0ff06d952ab1949 (diff)
downloadpdfium-e005dc33c31a2e701e1af3a0a3e5775cabbf1ddd.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 'fpdfsdk')
-rw-r--r--fpdfsdk/cpdfsdk_interform.cpp5
-rw-r--r--fpdfsdk/fpdf_flatten.cpp2
-rw-r--r--fpdfsdk/fpdfxfa/cpdfxfa_docenvironment.cpp30
3 files changed, 19 insertions, 18 deletions
diff --git a/fpdfsdk/cpdfsdk_interform.cpp b/fpdfsdk/cpdfsdk_interform.cpp
index 1e247465c8..379a8b999d 100644
--- a/fpdfsdk/cpdfsdk_interform.cpp
+++ b/fpdfsdk/cpdfsdk_interform.cpp
@@ -10,6 +10,7 @@
#include <memory>
#include <sstream>
#include <string>
+#include <utility>
#include <vector>
#include "core/fpdfapi/page/cpdf_page.h"
@@ -322,13 +323,11 @@ WideString CPDFSDK_InterForm::OnFormat(CPDF_FormField* pFormField,
WideString script = action.GetJavaScript();
if (!script.IsEmpty()) {
WideString Value = sValue;
-
IJS_Runtime::ScopedEventContext pContext(pRuntime);
pContext->OnField_Format(pFormField, Value, true);
-
Optional<IJS_Runtime::JS_Error> err = pContext->RunScript(script);
if (!err) {
- sValue = Value;
+ sValue = std::move(Value);
bFormatted = true;
}
}
diff --git a/fpdfsdk/fpdf_flatten.cpp b/fpdfsdk/fpdf_flatten.cpp
index 4b9e1f8a9d..b9e29be8b4 100644
--- a/fpdfsdk/fpdf_flatten.cpp
+++ b/fpdfsdk/fpdf_flatten.cpp
@@ -299,7 +299,7 @@ FPDF_EXPORT int FPDF_CALLCONV FPDFPage_Flatten(FPDF_PAGE page, int nFlag) {
while (i < INT_MAX) {
ByteString sKey = ByteString::Format("FFT%d", i);
if (!pPageXObject->KeyExist(sKey)) {
- key = sKey;
+ key = std::move(sKey);
break;
}
++i;
diff --git a/fpdfsdk/fpdfxfa/cpdfxfa_docenvironment.cpp b/fpdfsdk/fpdfxfa/cpdfxfa_docenvironment.cpp
index faa2fa5e42..386ea95f5e 100644
--- a/fpdfsdk/fpdfxfa/cpdfxfa_docenvironment.cpp
+++ b/fpdfsdk/fpdfxfa/cpdfxfa_docenvironment.cpp
@@ -7,6 +7,7 @@
#include "fpdfsdk/fpdfxfa/cpdfxfa_docenvironment.h"
#include <memory>
+#include <utility>
#include "core/fpdfapi/parser/cpdf_array.h"
#include "core/fpdfapi/parser/cpdf_stream_acc.h"
@@ -848,27 +849,28 @@ bool CPDFXFA_DocEnvironment::MailToInfo(WideString& csURL,
return false;
auto pos = srcURL.Find(L'?');
- WideString tmp;
- if (!pos.has_value()) {
- pos = srcURL.Find(L'@');
- if (!pos.has_value())
- return false;
- tmp = srcURL.Right(csURL.GetLength() - 7);
- } else {
- tmp = srcURL.Left(pos.value());
- tmp = tmp.Right(tmp.GetLength() - 7);
- }
- tmp.Trim();
+ {
+ WideString tmp;
+ if (!pos.has_value()) {
+ pos = srcURL.Find(L'@');
+ if (!pos.has_value())
+ return false;
- csToAddress = tmp;
+ tmp = srcURL.Right(csURL.GetLength() - 7);
+ } else {
+ tmp = srcURL.Left(pos.value());
+ tmp = tmp.Right(tmp.GetLength() - 7);
+ }
+ tmp.Trim();
+ csToAddress = std::move(tmp);
+ }
srcURL = srcURL.Right(srcURL.GetLength() - (pos.value() + 1));
while (!srcURL.IsEmpty()) {
srcURL.Trim();
pos = srcURL.Find(L'&');
-
- tmp = (!pos.has_value()) ? srcURL : srcURL.Left(pos.value());
+ WideString tmp = (!pos.has_value()) ? srcURL : srcURL.Left(pos.value());
tmp.Trim();
if (tmp.GetLength() >= 3 && tmp.Left(3).CompareNoCase(L"cc=") == 0) {
tmp = tmp.Right(tmp.GetLength() - 3);