summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorRyan Harrison <rharrison@chromium.org>2018-01-04 14:49:12 -0500
committerChromium commit bot <commit-bot@chromium.org>2018-01-04 20:09:31 +0000
commit86b5267ac4c2f169f105a1ea30cdf2eb0ea0b5dc (patch)
tree3915dfbd64eee6070f7c853b1f81acd38156a7ce
parentde3f3fc5e16a2ee4fad2bdc0cda9e2ce73fd4fe3 (diff)
downloadpdfium-86b5267ac4c2f169f105a1ea30cdf2eb0ea0b5dc.tar.xz
Make indices for CXFA_List be size_t instead of int32_t
Change-Id: Id825e027a337636bb779f09bc0b1c6985a781fa1 Reviewed-on: https://pdfium-review.googlesource.com/22257 Commit-Queue: Ryan Harrison <rharrison@chromium.org> Reviewed-by: dsinclair <dsinclair@chromium.org>
-rw-r--r--fxjs/xfa/cjx_list.cpp7
-rw-r--r--xfa/fxfa/parser/cxfa_arraynodelist.cpp5
-rw-r--r--xfa/fxfa/parser/cxfa_arraynodelist.h2
-rw-r--r--xfa/fxfa/parser/cxfa_attachnodelist.cpp5
-rw-r--r--xfa/fxfa/parser/cxfa_attachnodelist.h2
-rw-r--r--xfa/fxfa/parser/cxfa_list.h2
-rw-r--r--xfa/fxfa/parser/cxfa_treelist.cpp2
7 files changed, 13 insertions, 12 deletions
diff --git a/fxjs/xfa/cjx_list.cpp b/fxjs/xfa/cjx_list.cpp
index 57087a8492..9cbd32d352 100644
--- a/fxjs/xfa/cjx_list.cpp
+++ b/fxjs/xfa/cjx_list.cpp
@@ -76,12 +76,13 @@ CJS_Return CJX_List::item(CJS_V8* runtime,
if (params.size() != 1)
return CJS_Return(JSGetStringFromID(JSMessage::kParamError));
- int32_t iIndex = runtime->ToInt32(params[0]);
- if (iIndex < 0 || static_cast<size_t>(iIndex) >= GetXFAList()->GetLength())
+ int32_t index = runtime->ToInt32(params[0]);
+ size_t cast_index = static_cast<size_t>(index);
+ if (index < 0 || cast_index >= GetXFAList()->GetLength())
return CJS_Return(JSGetStringFromID(JSMessage::kInvalidInputError));
return CJS_Return(runtime->NewXFAObject(
- GetXFAList()->Item(iIndex),
+ GetXFAList()->Item(cast_index),
GetDocument()->GetScriptContext()->GetJseNormalClass()->GetTemplate()));
}
diff --git a/xfa/fxfa/parser/cxfa_arraynodelist.cpp b/xfa/fxfa/parser/cxfa_arraynodelist.cpp
index 9ea36d3c24..9eaf9a6c33 100644
--- a/xfa/fxfa/parser/cxfa_arraynodelist.cpp
+++ b/xfa/fxfa/parser/cxfa_arraynodelist.cpp
@@ -48,7 +48,6 @@ bool CXFA_ArrayNodeList::Remove(CXFA_Node* pNode) {
return true;
}
-CXFA_Node* CXFA_ArrayNodeList::Item(int32_t iIndex) {
- int32_t iSize = pdfium::CollectionSize<int32_t>(m_array);
- return (iIndex >= 0 && iIndex < iSize) ? m_array[iIndex] : nullptr;
+CXFA_Node* CXFA_ArrayNodeList::Item(size_t index) {
+ return index < m_array.size() ? m_array[index] : nullptr;
}
diff --git a/xfa/fxfa/parser/cxfa_arraynodelist.h b/xfa/fxfa/parser/cxfa_arraynodelist.h
index caee762e29..346b206f20 100644
--- a/xfa/fxfa/parser/cxfa_arraynodelist.h
+++ b/xfa/fxfa/parser/cxfa_arraynodelist.h
@@ -24,7 +24,7 @@ class CXFA_ArrayNodeList : public CXFA_TreeList {
bool Append(CXFA_Node* pNode) override;
bool Insert(CXFA_Node* pNewNode, CXFA_Node* pBeforeNode) override;
bool Remove(CXFA_Node* pNode) override;
- CXFA_Node* Item(int32_t iIndex) override;
+ CXFA_Node* Item(size_t iIndex) override;
void SetArrayNodeList(const std::vector<CXFA_Node*>& srcArray);
diff --git a/xfa/fxfa/parser/cxfa_attachnodelist.cpp b/xfa/fxfa/parser/cxfa_attachnodelist.cpp
index 3666b99bd4..2a4741175a 100644
--- a/xfa/fxfa/parser/cxfa_attachnodelist.cpp
+++ b/xfa/fxfa/parser/cxfa_attachnodelist.cpp
@@ -6,6 +6,7 @@
#include "xfa/fxfa/parser/cxfa_attachnodelist.h"
+#include "third_party/base/numerics/safe_conversions.h"
#include "xfa/fxfa/parser/cxfa_node.h"
CXFA_AttachNodeList::CXFA_AttachNodeList(CXFA_Document* pDocument,
@@ -40,8 +41,8 @@ bool CXFA_AttachNodeList::Remove(CXFA_Node* pNode) {
return m_pAttachNode->RemoveChild(pNode, true);
}
-CXFA_Node* CXFA_AttachNodeList::Item(int32_t iIndex) {
+CXFA_Node* CXFA_AttachNodeList::Item(size_t index) {
return m_pAttachNode->GetChild<CXFA_Node>(
- iIndex, XFA_Element::Unknown,
+ pdfium::base::checked_cast<int32_t>(index), XFA_Element::Unknown,
m_pAttachNode->GetElementType() == XFA_Element::Subform);
}
diff --git a/xfa/fxfa/parser/cxfa_attachnodelist.h b/xfa/fxfa/parser/cxfa_attachnodelist.h
index 390ea041b9..f0df2bb4d8 100644
--- a/xfa/fxfa/parser/cxfa_attachnodelist.h
+++ b/xfa/fxfa/parser/cxfa_attachnodelist.h
@@ -21,7 +21,7 @@ class CXFA_AttachNodeList : public CXFA_TreeList {
bool Append(CXFA_Node* pNode) override;
bool Insert(CXFA_Node* pNewNode, CXFA_Node* pBeforeNode) override;
bool Remove(CXFA_Node* pNode) override;
- CXFA_Node* Item(int32_t iIndex) override;
+ CXFA_Node* Item(size_t iIndex) override;
private:
CXFA_Node* m_pAttachNode;
diff --git a/xfa/fxfa/parser/cxfa_list.h b/xfa/fxfa/parser/cxfa_list.h
index 953e861835..de9406dd06 100644
--- a/xfa/fxfa/parser/cxfa_list.h
+++ b/xfa/fxfa/parser/cxfa_list.h
@@ -21,7 +21,7 @@ class CXFA_List : public CXFA_Object {
virtual bool Append(CXFA_Node* pNode) = 0;
virtual bool Insert(CXFA_Node* pNewNode, CXFA_Node* pBeforeNode) = 0;
virtual bool Remove(CXFA_Node* pNode) = 0;
- virtual CXFA_Node* Item(int32_t iIndex) = 0;
+ virtual CXFA_Node* Item(size_t iIndex) = 0;
protected:
CXFA_List(CXFA_Document* doc, std::unique_ptr<CJX_Object> js_obj);
diff --git a/xfa/fxfa/parser/cxfa_treelist.cpp b/xfa/fxfa/parser/cxfa_treelist.cpp
index 941020fe27..5db9ecbdf9 100644
--- a/xfa/fxfa/parser/cxfa_treelist.cpp
+++ b/xfa/fxfa/parser/cxfa_treelist.cpp
@@ -29,7 +29,7 @@ CXFA_Node* CXFA_TreeList::NamedItem(const WideStringView& wsName) {
uint32_t dwHashCode = FX_HashCode_GetW(wsName, false);
size_t count = GetLength();
for (size_t i = 0; i < count; i++) {
- CXFA_Node* ret = Item(pdfium::base::checked_cast<int32_t>(i));
+ CXFA_Node* ret = Item(i);
if (dwHashCode == ret->GetNameHash())
return ret;
}