diff options
Diffstat (limited to 'xfa')
-rw-r--r-- | xfa/fxfa/parser/cxfa_attachnodelist.cpp | 2 | ||||
-rw-r--r-- | xfa/fxfa/parser/cxfa_node.cpp | 10 | ||||
-rw-r--r-- | xfa/fxfa/parser/cxfa_node.h | 6 |
3 files changed, 7 insertions, 11 deletions
diff --git a/xfa/fxfa/parser/cxfa_attachnodelist.cpp b/xfa/fxfa/parser/cxfa_attachnodelist.cpp index 2a4741175a..f9bd26bf82 100644 --- a/xfa/fxfa/parser/cxfa_attachnodelist.cpp +++ b/xfa/fxfa/parser/cxfa_attachnodelist.cpp @@ -43,6 +43,6 @@ bool CXFA_AttachNodeList::Remove(CXFA_Node* pNode) { CXFA_Node* CXFA_AttachNodeList::Item(size_t index) { return m_pAttachNode->GetChild<CXFA_Node>( - pdfium::base::checked_cast<int32_t>(index), XFA_Element::Unknown, + index, XFA_Element::Unknown, m_pAttachNode->GetElementType() == XFA_Element::Subform); } diff --git a/xfa/fxfa/parser/cxfa_node.cpp b/xfa/fxfa/parser/cxfa_node.cpp index 3d132fedbc..08af2004a1 100644 --- a/xfa/fxfa/parser/cxfa_node.cpp +++ b/xfa/fxfa/parser/cxfa_node.cpp @@ -796,22 +796,20 @@ size_t CXFA_Node::CountChildren(XFA_Element eType, bool bOnlyChild) { return count; } -CXFA_Node* CXFA_Node::GetChildInternal(int32_t index, +CXFA_Node* CXFA_Node::GetChildInternal(size_t index, XFA_Element eType, bool bOnlyChild) { - ASSERT(index > -1); - - int32_t iCount = 0; + size_t count = 0; for (CXFA_Node* pNode = m_pChild; pNode; pNode = pNode->GetNodeItem(XFA_NODEITEM_NextSibling)) { if (pNode->GetElementType() != eType && eType != XFA_Element::Unknown) continue; if (bOnlyChild && HasProperty(pNode->GetElementType())) continue; - if (iCount == index) + if (count == index) return pNode; - ++iCount; + ++count; } return nullptr; } diff --git a/xfa/fxfa/parser/cxfa_node.h b/xfa/fxfa/parser/cxfa_node.h index cc8d5e8f8d..dea53e4525 100644 --- a/xfa/fxfa/parser/cxfa_node.h +++ b/xfa/fxfa/parser/cxfa_node.h @@ -157,7 +157,7 @@ class CXFA_Node : public CXFA_Object { size_t CountChildren(XFA_Element eType, bool bOnlyChild); template <typename T> - T* GetChild(int32_t index, XFA_Element eType, bool bOnlyChild) { + T* GetChild(size_t index, XFA_Element eType, bool bOnlyChild) { return static_cast<T*>(GetChildInternal(index, eType, bOnlyChild)); } @@ -246,9 +246,7 @@ class CXFA_Node : public CXFA_Object { void OnRemoved(bool bNotify); Optional<void*> GetDefaultValue(XFA_Attribute attr, XFA_AttributeType eType) const; - CXFA_Node* GetChildInternal(int32_t index, - XFA_Element eType, - bool bOnlyChild); + CXFA_Node* GetChildInternal(size_t index, XFA_Element eType, bool bOnlyChild); CXFA_Node* GetFirstChildByClassInternal(XFA_Element eType) const; CXFA_Node* GetNextSameNameSiblingInternal( const WideStringView& wsNodeName) const; |