From ec24b2e338de2a6211723f19f54386c950ac5010 Mon Sep 17 00:00:00 2001 From: Dan Sinclair Date: Tue, 2 Jan 2018 12:13:05 -0500 Subject: Make SharedCopyOnWrite use Retainables This CL removes the CountedObject from SharedCopyOnWrite and instead converts the items being shared into Retainable subclasses. BUG: chromium:792372 Change-Id: I9570a521f2fc2434013c3ccb103273bdd2440bb8 Reviewed-on: https://pdfium-review.googlesource.com/22010 Reviewed-by: Tom Sepez Commit-Queue: dsinclair --- core/fpdfapi/page/cpdf_clippath.h | 4 ++-- core/fpdfapi/page/cpdf_colorstate.h | 4 ++-- core/fpdfapi/page/cpdf_contentmark.h | 4 ++-- core/fpdfapi/page/cpdf_generalstate.h | 4 ++-- core/fpdfapi/page/cpdf_textstate.h | 4 ++-- 5 files changed, 10 insertions(+), 10 deletions(-) (limited to 'core/fpdfapi') diff --git a/core/fpdfapi/page/cpdf_clippath.h b/core/fpdfapi/page/cpdf_clippath.h index 89365a2d5a..91a25cda1a 100644 --- a/core/fpdfapi/page/cpdf_clippath.h +++ b/core/fpdfapi/page/cpdf_clippath.h @@ -44,13 +44,13 @@ class CPDF_ClipPath { void Transform(const CFX_Matrix& matrix); private: - class PathData { + class PathData : public Retainable { public: using PathAndTypeData = std::pair; PathData(); PathData(const PathData& that); - ~PathData(); + ~PathData() override; std::vector m_PathAndTypeList; std::vector> m_TextList; diff --git a/core/fpdfapi/page/cpdf_colorstate.h b/core/fpdfapi/page/cpdf_colorstate.h index 36a2c2d260..9619051e2c 100644 --- a/core/fpdfapi/page/cpdf_colorstate.h +++ b/core/fpdfapi/page/cpdf_colorstate.h @@ -46,11 +46,11 @@ class CPDF_ColorState { bool HasRef() const { return !!m_Ref; } private: - class ColorData { + class ColorData : public Retainable { public: ColorData(); ColorData(const ColorData& src); - ~ColorData(); + ~ColorData() override; void SetDefault(); diff --git a/core/fpdfapi/page/cpdf_contentmark.h b/core/fpdfapi/page/cpdf_contentmark.h index cb22737ca9..d9bc35a7fb 100644 --- a/core/fpdfapi/page/cpdf_contentmark.h +++ b/core/fpdfapi/page/cpdf_contentmark.h @@ -30,11 +30,11 @@ class CPDF_ContentMark { bool HasRef() const { return !!m_Ref; } private: - class MarkData { + class MarkData : public Retainable { public: MarkData(); MarkData(const MarkData& src); - ~MarkData(); + ~MarkData() override; size_t CountItems() const; const CPDF_ContentMarkItem& GetItem(size_t index) const; diff --git a/core/fpdfapi/page/cpdf_generalstate.h b/core/fpdfapi/page/cpdf_generalstate.h index 5abb87ea26..5d6d5dc552 100644 --- a/core/fpdfapi/page/cpdf_generalstate.h +++ b/core/fpdfapi/page/cpdf_generalstate.h @@ -77,11 +77,11 @@ class CPDF_GeneralState { CFX_Matrix* GetMutableMatrix(); private: - class StateData { + class StateData : public Retainable { public: StateData(); StateData(const StateData& that); - ~StateData(); + ~StateData() override; ByteString m_BlendMode; int m_BlendType; diff --git a/core/fpdfapi/page/cpdf_textstate.h b/core/fpdfapi/page/cpdf_textstate.h index 2a48702318..aa128072b6 100644 --- a/core/fpdfapi/page/cpdf_textstate.h +++ b/core/fpdfapi/page/cpdf_textstate.h @@ -59,11 +59,11 @@ class CPDF_TextState { float* GetMutableCTM(); private: - class TextData { + class TextData : public Retainable { public: TextData(); TextData(const TextData& src); - ~TextData(); + ~TextData() override; void SetFont(CPDF_Font* pFont); float GetFontSizeV() const; -- cgit v1.2.3