summaryrefslogtreecommitdiff
path: root/core/fpdfapi/page
diff options
context:
space:
mode:
authorDan Sinclair <dsinclair@chromium.org>2018-01-02 12:13:05 -0500
committerChromium commit bot <commit-bot@chromium.org>2018-01-08 14:59:21 +0000
commitec24b2e338de2a6211723f19f54386c950ac5010 (patch)
tree02b891c24dd52215363c1a6a99c99e65a1f93729 /core/fpdfapi/page
parent5553d8b11634935c34e7774325eda6afd61c8f56 (diff)
downloadpdfium-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/page')
-rw-r--r--core/fpdfapi/page/cpdf_clippath.h4
-rw-r--r--core/fpdfapi/page/cpdf_colorstate.h4
-rw-r--r--core/fpdfapi/page/cpdf_contentmark.h4
-rw-r--r--core/fpdfapi/page/cpdf_generalstate.h4
-rw-r--r--core/fpdfapi/page/cpdf_textstate.h4
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;