diff options
author | Lei Zhang <thestig@chromium.org> | 2016-01-05 16:33:12 -0800 |
---|---|---|
committer | Lei Zhang <thestig@chromium.org> | 2016-01-05 16:33:12 -0800 |
commit | 62664cee15230d6cbe08ed010721a4557b36dc22 (patch) | |
tree | 2baf5570b23f51e082f3ab3e8de88d8538043ae3 /core/src/fpdfapi/fpdf_parser/fpdf_parser_objects.cpp | |
parent | 6ba32d9e65ef5d40d357876f9457e228a5fab308 (diff) | |
download | pdfium-62664cee15230d6cbe08ed010721a4557b36dc22.tar.xz |
Merge to XFA: Fix a few uses of default arguments.
TBR=tsepez@chromium.org
Review URL: https://codereview.chromium.org/1555293002 .
(cherry picked from commit dbfaa8d11404a53b4807b3dbd0185047367bbff6)
Review URL: https://codereview.chromium.org/1565603002 .
Diffstat (limited to 'core/src/fpdfapi/fpdf_parser/fpdf_parser_objects.cpp')
-rw-r--r-- | core/src/fpdfapi/fpdf_parser/fpdf_parser_objects.cpp | 26 |
1 files changed, 16 insertions, 10 deletions
diff --git a/core/src/fpdfapi/fpdf_parser/fpdf_parser_objects.cpp b/core/src/fpdfapi/fpdf_parser/fpdf_parser_objects.cpp index b94a6d91b3..b3005a9e83 100644 --- a/core/src/fpdfapi/fpdf_parser/fpdf_parser_objects.cpp +++ b/core/src/fpdfapi/fpdf_parser/fpdf_parser_objects.cpp @@ -61,7 +61,7 @@ CFX_ByteString CPDF_Object::GetString() const { break; CPDF_Object* pObj = - pRef->m_pObjList->GetIndirectObject(pRef->GetRefObjNum()); + pRef->m_pObjList->GetIndirectObject(pRef->GetRefObjNum(), nullptr); return pObj ? pObj->GetString() : CFX_ByteString(); } } @@ -83,12 +83,13 @@ CFX_ByteStringC CPDF_Object::GetConstString() const { break; CPDF_Object* pObj = - pRef->m_pObjList->GetIndirectObject(pRef->GetRefObjNum()); + pRef->m_pObjList->GetIndirectObject(pRef->GetRefObjNum(), nullptr); return pObj ? pObj->GetConstString() : CFX_ByteStringC(); } } return CFX_ByteStringC(); } + FX_FLOAT CPDF_Object::GetNumber() const { switch (m_Type) { case PDFOBJ_NUMBER: @@ -99,20 +100,22 @@ FX_FLOAT CPDF_Object::GetNumber() const { break; CPDF_Object* pObj = - pRef->m_pObjList->GetIndirectObject(pRef->GetRefObjNum()); + pRef->m_pObjList->GetIndirectObject(pRef->GetRefObjNum(), nullptr); return pObj ? pObj->GetNumber() : 0; } } return 0; } + FX_FLOAT CPDF_Object::GetNumber16() const { return GetNumber(); } + int CPDF_Object::GetInteger() const { CFX_AutoRestorer<int> restorer(&s_nCurRefDepth); - if (++s_nCurRefDepth > OBJECT_REF_MAX_DEPTH) { + if (++s_nCurRefDepth > kObjectRefMaxDepth) return 0; - } + switch (m_Type) { case PDFOBJ_BOOLEAN: return AsBoolean()->m_bValue; @@ -146,7 +149,8 @@ CPDF_Dictionary* CPDF_Object::GetDict() const { CPDF_IndirectObjects* pIndirect = pRef->GetObjList(); if (!pIndirect) return nullptr; - CPDF_Object* pObj = pIndirect->GetIndirectObject(pRef->GetRefObjNum()); + CPDF_Object* pObj = + pIndirect->GetIndirectObject(pRef->GetRefObjNum(), nullptr); if (!pObj || (pObj == this)) return nullptr; return pObj->GetDict(); @@ -161,6 +165,7 @@ CPDF_Array* CPDF_Object::GetArray() const { // See bug #234. return const_cast<CPDF_Array*>(AsArray()); } + void CPDF_Object::SetString(const CFX_ByteString& str) { switch (m_Type) { case PDFOBJ_BOOLEAN: @@ -218,14 +223,16 @@ FX_BOOL CPDF_Object::IsIdentical(CPDF_Object* pOther) const { } return FALSE; } + CPDF_Object* CPDF_Object::GetDirect() const { const CPDF_Reference* pRef = AsReference(); if (!pRef) return const_cast<CPDF_Object*>(this); if (!pRef->m_pObjList) return nullptr; - return pRef->m_pObjList->GetIndirectObject(pRef->GetRefObjNum()); + return pRef->m_pObjList->GetIndirectObject(pRef->GetRefObjNum(), nullptr); } + CPDF_Object* CPDF_Object::Clone(FX_BOOL bDirect) const { std::set<FX_DWORD> visited; return CloneInternal(bDirect, &visited); @@ -1089,9 +1096,8 @@ CPDF_IndirectObjects::~CPDF_IndirectObjects() { static_cast<CPDF_Object*>(value)->Destroy(); } } -CPDF_Object* CPDF_IndirectObjects::GetIndirectObject( - FX_DWORD objnum, - struct PARSE_CONTEXT* pContext) { +CPDF_Object* CPDF_IndirectObjects::GetIndirectObject(FX_DWORD objnum, + PARSE_CONTEXT* pContext) { if (objnum == 0) return nullptr; void* value; |