From 29d447ae35101675a2a2d8bc1dcfca65de7f3929 Mon Sep 17 00:00:00 2001 From: thestig Date: Thu, 23 Jun 2016 19:57:45 -0700 Subject: Improve hint table validation checks. Check required hint table dictionary entries and make sure they: - Exist. - Are of the right type. Along the way: - Fix FX_atonum() to not have a non-const pass-by-ref param. - Simplify code in CPDF_StreamContentParser. - Make CPDF_Number::IsInteger() a const method. BUG=610555 Review-Url: https://codereview.chromium.org/2095763003 --- core/fpdfapi/fpdf_parser/cpdf_number.cpp | 13 ++++++------- 1 file changed, 6 insertions(+), 7 deletions(-) (limited to 'core/fpdfapi/fpdf_parser/cpdf_number.cpp') diff --git a/core/fpdfapi/fpdf_parser/cpdf_number.cpp b/core/fpdfapi/fpdf_parser/cpdf_number.cpp index a6bace57c9..5012e308ce 100644 --- a/core/fpdfapi/fpdf_parser/cpdf_number.cpp +++ b/core/fpdfapi/fpdf_parser/cpdf_number.cpp @@ -6,15 +6,14 @@ #include "core/fpdfapi/fpdf_parser/include/cpdf_number.h" -CPDF_Number::CPDF_Number() : m_bInteger(TRUE), m_Integer(0) {} +CPDF_Number::CPDF_Number() : m_bInteger(true), m_Integer(0) {} -CPDF_Number::CPDF_Number(int value) : m_bInteger(TRUE), m_Integer(value) {} +CPDF_Number::CPDF_Number(int value) : m_bInteger(true), m_Integer(value) {} -CPDF_Number::CPDF_Number(FX_FLOAT value) : m_bInteger(FALSE), m_Float(value) {} +CPDF_Number::CPDF_Number(FX_FLOAT value) : m_bInteger(false), m_Float(value) {} -CPDF_Number::CPDF_Number(const CFX_ByteStringC& str) { - FX_atonum(str, m_bInteger, &m_Integer); -} +CPDF_Number::CPDF_Number(const CFX_ByteStringC& str) + : m_bInteger(FX_atonum(str, &m_Integer)) {} CPDF_Number::~CPDF_Number() {} @@ -47,7 +46,7 @@ const CPDF_Number* CPDF_Number::AsNumber() const { } void CPDF_Number::SetString(const CFX_ByteString& str) { - FX_atonum(str.AsStringC(), m_bInteger, &m_Integer); + m_bInteger = FX_atonum(str.AsStringC(), &m_Integer); } CFX_ByteString CPDF_Number::GetString() const { -- cgit v1.2.3