Fix nits in CPDF_Pattern and related code.
- Mention enums are based on values in the PDF spec, so do not change.
- Remove a check that is never true.
Change-Id: I5c4af6a81b4643b62f1f0bf870f96eee405bf4fb
Reviewed-on: https://pdfium-review.googlesource.com/c/pdfium/+/54210
Reviewed-by: Tom Sepez <tsepez@chromium.org>
Commit-Queue: Lei Zhang <thestig@chromium.org>
diff --git a/core/fpdfapi/page/cpdf_docpagedata.cpp b/core/fpdfapi/page/cpdf_docpagedata.cpp
index 4c2ee21..f8124a8 100644
--- a/core/fpdfapi/page/cpdf_docpagedata.cpp
+++ b/core/fpdfapi/page/cpdf_docpagedata.cpp
@@ -365,10 +365,10 @@
return nullptr;
int type = pDict->GetIntegerFor("PatternType");
- if (type == CPDF_Pattern::TILING) {
+ if (type == CPDF_Pattern::kTiling) {
pPattern = pdfium::MakeUnique<CPDF_TilingPattern>(m_pPDFDoc.Get(),
pPatternObj, matrix);
- } else if (type == CPDF_Pattern::SHADING) {
+ } else if (type == CPDF_Pattern::kShading) {
pPattern = pdfium::MakeUnique<CPDF_ShadingPattern>(
m_pPDFDoc.Get(), pPatternObj, false, matrix);
} else {
diff --git a/core/fpdfapi/page/cpdf_pattern.cpp b/core/fpdfapi/page/cpdf_pattern.cpp
index c6d3c54..84e641a 100644
--- a/core/fpdfapi/page/cpdf_pattern.cpp
+++ b/core/fpdfapi/page/cpdf_pattern.cpp
@@ -11,9 +11,12 @@
CPDF_Pattern::CPDF_Pattern(CPDF_Document* pDoc,
CPDF_Object* pObj,
const CFX_Matrix& parentMatrix)
- : m_pDocument(pDoc), m_pPatternObj(pObj), m_ParentMatrix(parentMatrix) {}
+ : m_pDocument(pDoc), m_pPatternObj(pObj), m_ParentMatrix(parentMatrix) {
+ ASSERT(m_pDocument);
+ ASSERT(m_pPatternObj);
+}
-CPDF_Pattern::~CPDF_Pattern() {}
+CPDF_Pattern::~CPDF_Pattern() = default;
void CPDF_Pattern::SetPatternToFormMatrix() {
const CPDF_Dictionary* pDict = pattern_obj()->GetDict();
diff --git a/core/fpdfapi/page/cpdf_pattern.h b/core/fpdfapi/page/cpdf_pattern.h
index 2fc6b8e..474575c 100644
--- a/core/fpdfapi/page/cpdf_pattern.h
+++ b/core/fpdfapi/page/cpdf_pattern.h
@@ -20,7 +20,8 @@
class CPDF_Pattern {
public:
- enum PatternType { TILING = 1, SHADING };
+ // Values used in PDFs. Do not change.
+ enum PatternType { kTiling = 1, kShading = 2 };
virtual ~CPDF_Pattern();
diff --git a/core/fpdfapi/page/cpdf_shadingpattern.h b/core/fpdfapi/page/cpdf_shadingpattern.h
index a59ee51..cce1e04 100644
--- a/core/fpdfapi/page/cpdf_shadingpattern.h
+++ b/core/fpdfapi/page/cpdf_shadingpattern.h
@@ -15,6 +15,8 @@
#include "core/fxcrt/fx_system.h"
#include "core/fxcrt/unowned_ptr.h"
+// Values used in PDFs except for |kInvalidShading| and |kMaxShading|.
+// Do not change.
enum ShadingType {
kInvalidShading = 0,
kFunctionBasedShading = 1,
diff --git a/core/fpdfapi/page/cpdf_tilingpattern.cpp b/core/fpdfapi/page/cpdf_tilingpattern.cpp
index f6655a6..9bf9a86 100644
--- a/core/fpdfapi/page/cpdf_tilingpattern.cpp
+++ b/core/fpdfapi/page/cpdf_tilingpattern.cpp
@@ -23,7 +23,7 @@
SetPatternToFormMatrix();
}
-CPDF_TilingPattern::~CPDF_TilingPattern() {}
+CPDF_TilingPattern::~CPDF_TilingPattern() = default;
CPDF_TilingPattern* CPDF_TilingPattern::AsTilingPattern() {
return this;
@@ -35,9 +35,6 @@
std::unique_ptr<CPDF_Form> CPDF_TilingPattern::Load(CPDF_PageObject* pPageObj) {
const CPDF_Dictionary* pDict = pattern_obj()->GetDict();
- if (!pDict)
- return nullptr;
-
m_bColored = pDict->GetIntegerFor("PaintType") == 1;
m_XStep = static_cast<float>(fabs(pDict->GetNumberFor("XStep")));
m_YStep = static_cast<float>(fabs(pDict->GetNumberFor("YStep")));