diff options
author | Dan Sinclair <dsinclair@chromium.org> | 2018-01-02 12:13:05 -0500 |
---|---|---|
committer | Chromium commit bot <commit-bot@chromium.org> | 2018-01-08 14:59:21 +0000 |
commit | ec24b2e338de2a6211723f19f54386c950ac5010 (patch) | |
tree | 02b891c24dd52215363c1a6a99c99e65a1f93729 /core/fpdfapi | |
parent | 5553d8b11634935c34e7774325eda6afd61c8f56 (diff) | |
download | pdfium-ec24b2e338de2a6211723f19f54386c950ac5010.tar.xz |
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 <tsepez@chromium.org>
Commit-Queue: dsinclair <dsinclair@chromium.org>
Diffstat (limited to 'core/fpdfapi')
-rw-r--r-- | core/fpdfapi/page/cpdf_clippath.h | 4 | ||||
-rw-r--r-- | core/fpdfapi/page/cpdf_colorstate.h | 4 | ||||
-rw-r--r-- | core/fpdfapi/page/cpdf_contentmark.h | 4 | ||||
-rw-r--r-- | core/fpdfapi/page/cpdf_generalstate.h | 4 | ||||
-rw-r--r-- | core/fpdfapi/page/cpdf_textstate.h | 4 |
5 files changed, 10 insertions, 10 deletions
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<CPDF_Path, uint8_t>; PathData(); PathData(const PathData& that); - ~PathData(); + ~PathData() override; std::vector<PathAndTypeData> m_PathAndTypeList; std::vector<std::unique_ptr<CPDF_TextObject>> 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; |