Fix nits in StructElement code.
Mainly remove some unnecessary work, since CPDF_StructKid's member
variables start out fully initialized to default values.
Change-Id: I3a511e871025a202999571a83b89ca179bc5d99c
Reviewed-on: https://pdfium-review.googlesource.com/c/pdfium/+/69131
Reviewed-by: Tom Sepez <tsepez@chromium.org>
Commit-Queue: Lei Zhang <thestig@chromium.org>
diff --git a/core/fpdfdoc/cpdf_structelement.cpp b/core/fpdfdoc/cpdf_structelement.cpp
index 40477b4..3afa094 100644
--- a/core/fpdfdoc/cpdf_structelement.cpp
+++ b/core/fpdfdoc/cpdf_structelement.cpp
@@ -19,7 +19,7 @@
namespace {
-ByteString GetStructElementType(CPDF_StructTree* pTree,
+ByteString GetStructElementType(const CPDF_StructTree* pTree,
const CPDF_Dictionary* pDict) {
ByteString type = pDict->GetStringFor("S");
if (pTree->GetRoleMap()) {
@@ -78,10 +78,10 @@
if (!pKids)
return;
- m_Kids.clear();
+ ASSERT(m_Kids.empty());
if (const CPDF_Array* pArray = pKids->AsArray()) {
m_Kids.resize(pArray->size());
- for (uint32_t i = 0; i < pArray->size(); i++) {
+ for (size_t i = 0; i < pArray->size(); ++i) {
const CPDF_Object* pKid = pArray->GetDirectObjectAt(i);
LoadKid(PageObjNum, pKid, &m_Kids[i]);
}
@@ -95,7 +95,6 @@
void CPDF_StructElement::LoadKid(uint32_t PageObjNum,
const CPDF_Object* pKidObj,
CPDF_StructKid* pKid) {
- pKid->m_Type = CPDF_StructKid::kInvalid;
if (!pKidObj)
return;
@@ -140,5 +139,4 @@
pKid->m_Type = CPDF_StructKid::kElement;
pKid->m_pDict.Reset(pKidDict);
- pKid->m_pElement = nullptr;
}
diff --git a/fpdfsdk/fpdf_structtree.cpp b/fpdfsdk/fpdf_structtree.cpp
index e6d92df..2c5c6e3 100644
--- a/fpdfsdk/fpdf_structtree.cpp
+++ b/fpdfsdk/fpdf_structtree.cpp
@@ -126,6 +126,5 @@
if (!elem || index < 0 || static_cast<size_t>(index) >= elem->CountKids())
return nullptr;
- return FPDFStructElementFromCPDFStructElement(
- elem->GetKidIfElement(static_cast<size_t>(index)));
+ return FPDFStructElementFromCPDFStructElement(elem->GetKidIfElement(index));
}