Fix ClangTidy - Performance findings in pdfium.
These fixes are automatically created by various analysis tools, but
have been manually triggered to be applied. See go/code-findings-fixes.
* passing result of std::move() as a const reference argument; no move
will actually happen (23 times)
* std::move of the const variable 'name' has no effect; remove
std::move() or make the variable non-const
* std::move of the expression of the trivially-copyable type
'MayBeSignature' has no effect; remove std::move()
PiperOrigin-RevId: 252047041
Change-Id: I38e79918e6336bb8b80c57ccf0b919883be05fe4
Reviewed-on: https://pdfium-review.googlesource.com/c/pdfium/+/55770
Reviewed-by: Lei Zhang <thestig@chromium.org>
Commit-Queue: Lei Zhang <thestig@chromium.org>
diff --git a/core/fpdfapi/edit/cpdf_pagecontentgenerator.cpp b/core/fpdfapi/edit/cpdf_pagecontentgenerator.cpp
index 7eb1012..d013fdb 100644
--- a/core/fpdfapi/edit/cpdf_pagecontentgenerator.cpp
+++ b/core/fpdfapi/edit/cpdf_pagecontentgenerator.cpp
@@ -474,7 +474,7 @@
gsDict->SetNewFor<CPDF_Name>("BM",
pPageObj->m_GeneralState.GetBlendMode());
}
- CPDF_Object* pDict = m_pDocument->AddIndirectObject(std::move(gsDict));
+ CPDF_Object* pDict = m_pDocument->AddIndirectObject(gsDict);
name = RealizeResource(pDict, "ExtGState");
m_pObjHolder->m_GraphicsMap[graphD] = name;
}
@@ -506,7 +506,7 @@
gsDict->SetNewFor<CPDF_Number>("ca", defaultGraphics.fillAlpha);
gsDict->SetNewFor<CPDF_Number>("CA", defaultGraphics.strokeAlpha);
gsDict->SetNewFor<CPDF_Name>("BM", "Normal");
- CPDF_Object* pDict = m_pDocument->AddIndirectObject(std::move(gsDict));
+ CPDF_Object* pDict = m_pDocument->AddIndirectObject(gsDict);
ByteString name = RealizeResource(pDict, "ExtGState");
m_pObjHolder->m_GraphicsMap[defaultGraphics] = name;
return name;
@@ -554,7 +554,7 @@
pFontDict->SetFor("Encoding",
pEncoding->Realize(m_pDocument->GetByteStringPool()));
}
- pIndirectFont = m_pDocument->AddIndirectObject(std::move(pFontDict));
+ pIndirectFont = m_pDocument->AddIndirectObject(pFontDict);
}
dictName = RealizeResource(pIndirectFont, "Font");
m_pObjHolder->m_FontsMap[data] = dictName;
diff --git a/core/fpdfapi/font/cpdf_fontencoding.cpp b/core/fpdfapi/font/cpdf_fontencoding.cpp
index 00f7c98..df34012 100644
--- a/core/fpdfapi/font/cpdf_fontencoding.cpp
+++ b/core/fpdfapi/font/cpdf_fontencoding.cpp
@@ -1725,8 +1725,8 @@
auto pDict = pdfium::MakeRetain<CPDF_Dictionary>(pPool);
pDict->SetNewFor<CPDF_Name>("BaseEncoding", "WinAnsiEncoding");
- pDict->SetFor("Differences", std::move(pDiff));
- return std::move(pDict);
+ pDict->SetFor("Differences", pDiff);
+ return pDict;
}
uint32_t FT_CharCodeFromUnicode(int encoding, wchar_t unicode) {
diff --git a/core/fpdfapi/page/cpdf_contentmarks.cpp b/core/fpdfapi/page/cpdf_contentmarks.cpp
index 45d3621..0b95ac5 100644
--- a/core/fpdfapi/page/cpdf_contentmarks.cpp
+++ b/core/fpdfapi/page/cpdf_contentmarks.cpp
@@ -151,7 +151,7 @@
const ByteString& name,
CPDF_Dictionary* pDict,
const ByteString& property_name) {
- auto pItem = pdfium::MakeRetain<CPDF_ContentMarkItem>(std::move(name));
+ auto pItem = pdfium::MakeRetain<CPDF_ContentMarkItem>(name);
pItem->SetPropertiesHolder(pDict, property_name);
m_Marks.push_back(pItem);
}
diff --git a/core/fpdfapi/page/cpdf_streamparser.cpp b/core/fpdfapi/page/cpdf_streamparser.cpp
index 590020a..7d790fb 100644
--- a/core/fpdfapi/page/cpdf_streamparser.cpp
+++ b/core/fpdfapi/page/cpdf_streamparser.cpp
@@ -339,7 +339,7 @@
if (!key.IsEmpty())
pDict->SetFor(key, std::move(pObj));
}
- return std::move(pDict);
+ return pDict;
}
if (first_char == '[') {
@@ -357,7 +357,7 @@
if (!m_WordSize || m_WordBuffer[0] == ']')
break;
}
- return std::move(pArray);
+ return pArray;
}
if (WordBufferMatches(kFalse))
diff --git a/core/fpdfapi/parser/cpdf_crypto_handler.cpp b/core/fpdfapi/parser/cpdf_crypto_handler.cpp
index 72ca15e..53d8f5f 100644
--- a/core/fpdfapi/parser/cpdf_crypto_handler.cpp
+++ b/core/fpdfapi/parser/cpdf_crypto_handler.cpp
@@ -351,7 +351,7 @@
}
// Signature dictionaries check.
while (!may_be_sign_dictionaries.empty()) {
- auto dict_and_contents = std::move(may_be_sign_dictionaries.top());
+ auto dict_and_contents = may_be_sign_dictionaries.top();
may_be_sign_dictionaries.pop();
if (!IsSignatureDictionary(dict_and_contents.parent)) {
// This is not signature dictionary. Do decrypt its contents.
diff --git a/core/fpdfapi/parser/cpdf_dictionary.cpp b/core/fpdfapi/parser/cpdf_dictionary.cpp
index b79def9..6c4c6e6 100644
--- a/core/fpdfapi/parser/cpdf_dictionary.cpp
+++ b/core/fpdfapi/parser/cpdf_dictionary.cpp
@@ -80,7 +80,7 @@
pCopy->m_Map.insert(std::make_pair(it.first, std::move(obj)));
}
}
- return std::move(pCopy);
+ return pCopy;
}
const CPDF_Object* CPDF_Dictionary::GetObjectFor(const ByteString& key) const {
diff --git a/core/fpdfapi/parser/cpdf_string.cpp b/core/fpdfapi/parser/cpdf_string.cpp
index 721672d..e30c50e 100644
--- a/core/fpdfapi/parser/cpdf_string.cpp
+++ b/core/fpdfapi/parser/cpdf_string.cpp
@@ -40,7 +40,7 @@
auto pRet = pdfium::MakeRetain<CPDF_String>();
pRet->m_String = m_String;
pRet->m_bHex = m_bHex;
- return std::move(pRet);
+ return pRet;
}
ByteString CPDF_String::GetString() const {
diff --git a/core/fpdfapi/parser/cpdf_syntax_parser.cpp b/core/fpdfapi/parser/cpdf_syntax_parser.cpp
index 50014cd..c990030 100644
--- a/core/fpdfapi/parser/cpdf_syntax_parser.cpp
+++ b/core/fpdfapi/parser/cpdf_syntax_parser.cpp
@@ -520,8 +520,7 @@
}
AutoRestorer<FX_FILESIZE> pos_restorer(&m_Pos);
- if (GetNextWord(nullptr) != "stream")
- return std::move(pDict);
+ if (GetNextWord(nullptr) != "stream") return pDict;
pos_restorer.AbandonRestoration();
return ReadStream(std::move(pDict));
}
diff --git a/core/fpdfdoc/cpdf_formfield.cpp b/core/fpdfdoc/cpdf_formfield.cpp
index cb43042..0322faf 100644
--- a/core/fpdfdoc/cpdf_formfield.cpp
+++ b/core/fpdfdoc/cpdf_formfield.cpp
@@ -635,7 +635,7 @@
pArray->AddNew<CPDF_String>(GetOptionValue(i));
}
if (pArray->size() > 0) {
- m_pDict->SetFor(pdfium::form_fields::kV, std::move(pArray));
+ m_pDict->SetFor(pdfium::form_fields::kV, pArray);
}
}
diff --git a/core/fpdfdoc/cpdf_interactiveform.cpp b/core/fpdfdoc/cpdf_interactiveform.cpp
index 4b03b51..665bd9e 100644
--- a/core/fpdfdoc/cpdf_interactiveform.cpp
+++ b/core/fpdfdoc/cpdf_interactiveform.cpp
@@ -1037,7 +1037,7 @@
pNewDict->SetNewFor<CPDF_Name>("Type", "Filespec");
CPDF_FileSpec filespec(pNewDict.Get());
filespec.SetFileName(pdf_path);
- pMainDict->SetFor("F", std::move(pNewDict));
+ pMainDict->SetFor("F", pNewDict);
}
}
@@ -1080,7 +1080,7 @@
if (pV)
pFieldDict->SetFor(pdfium::form_fields::kV, pV->CloneDirectObject());
}
- pFields->Add(std::move(pFieldDict));
+ pFields->Add(pFieldDict);
}
return pDoc;
}
diff --git a/core/fpdfdoc/cpvt_generateap.cpp b/core/fpdfdoc/cpvt_generateap.cpp
index 81f4e08..77c427c 100644
--- a/core/fpdfdoc/cpvt_generateap.cpp
+++ b/core/fpdfdoc/cpvt_generateap.cpp
@@ -489,7 +489,7 @@
auto pExtGStateDict =
pdfium::MakeRetain<CPDF_Dictionary>(pAnnotDict.GetByteStringPool());
- pExtGStateDict->SetFor(sExtGSDictName, std::move(pGSDict));
+ pExtGStateDict->SetFor(sExtGSDictName, pGSDict);
return pExtGStateDict;
}
@@ -498,10 +498,8 @@
RetainPtr<CPDF_Dictionary> pExtGStateDict,
RetainPtr<CPDF_Dictionary> pResourceFontDict) {
auto pResourceDict = pDoc->New<CPDF_Dictionary>();
- if (pExtGStateDict)
- pResourceDict->SetFor("ExtGState", std::move(pExtGStateDict));
- if (pResourceFontDict)
- pResourceDict->SetFor("Font", std::move(pResourceFontDict));
+ if (pExtGStateDict) pResourceDict->SetFor("ExtGState", pExtGStateDict);
+ if (pResourceFontDict) pResourceDict->SetFor("Font", pResourceFontDict);
return pResourceDict;
}
@@ -529,7 +527,7 @@
? CPDF_Annot::BoundingRectFromQuadPoints(pAnnotDict)
: pAnnotDict->GetRectFor(pdfium::annotation::kRect);
pStreamDict->SetRectFor("BBox", rect);
- pStreamDict->SetFor("Resources", std::move(pResourceDict));
+ pStreamDict->SetFor("Resources", pResourceDict);
}
bool GenerateCircleAP(CPDF_Document* pDoc, CPDF_Dictionary* pAnnotDict) {
diff --git a/core/fxge/dib/cfx_dibitmap.cpp b/core/fxge/dib/cfx_dibitmap.cpp
index adbed06..9c7bc24 100644
--- a/core/fxge/dib/cfx_dibitmap.cpp
+++ b/core/fxge/dib/cfx_dibitmap.cpp
@@ -348,7 +348,7 @@
if (!pSrcMatched)
return false;
- pSrcClone = std::move(pSrcMatched);
+ pSrcClone = pSrcMatched;
}
RetainPtr<CFX_DIBitmap> pDst(this);
if (destChannel == FXDIB_Alpha && m_pAlphaMask) {
diff --git a/fpdfsdk/fpdf_annot.cpp b/fpdfsdk/fpdf_annot.cpp
index f8bb967..7a2a164 100644
--- a/fpdfsdk/fpdf_annot.cpp
+++ b/fpdfsdk/fpdf_annot.cpp
@@ -245,7 +245,7 @@
CPDF_Array* pAnnotList = pPage->GetDict()->GetArrayFor("Annots");
if (!pAnnotList)
pAnnotList = pPage->GetDict()->SetNewFor<CPDF_Array>("Annots");
- pAnnotList->Add(std::move(pDict));
+ pAnnotList->Add(pDict);
// Caller takes ownership.
return FPDFAnnotationFromCPDFAnnotContext(pNewAnnot.release());
diff --git a/fpdfsdk/fpdf_edittext.cpp b/fpdfsdk/fpdf_edittext.cpp
index 5d9841a..c333cbb 100644
--- a/fpdfsdk/fpdf_edittext.cpp
+++ b/fpdfsdk/fpdf_edittext.cpp
@@ -375,7 +375,7 @@
auto oneW = pdfium::MakeRetain<CPDF_Array>();
oneW->AddNew<CPDF_Number>(w);
widthsArray->AddNew<CPDF_Number>(ch);
- widthsArray->Add(std::move(oneW));
+ widthsArray->Add(oneW);
break;
}
++it;
@@ -412,7 +412,7 @@
++it;
curWidthArray->AddNew<CPDF_Number>(static_cast<int>(it->second));
}
- widthsArray->Add(std::move(curWidthArray));
+ widthsArray->Add(curWidthArray);
}
pCIDFont->SetNewFor<CPDF_Reference>("W", pDoc, widthsArray->GetObjNum());