diff options
author | Tom Sepez <tsepez@chromium.org> | 2015-04-14 12:54:38 -0700 |
---|---|---|
committer | Tom Sepez <tsepez@chromium.org> | 2015-04-14 12:54:38 -0700 |
commit | 4926900ab54a493d236291b5a24dfa4476792182 (patch) | |
tree | e53800a0569300516c934bfccbb036ce39d98cb3 /core/src/fpdfdoc/pdf_vt.h | |
parent | eddab4425614e49146f904f00da4a664ba4b581b (diff) | |
download | pdfium-4926900ab54a493d236291b5a24dfa4476792182.tar.xz |
Kill CFX_Object.
CFX_Object is a type that implements its own new operators that return
NULL on error. There's no need for this given the |new (std::nothrow)|
syntax; in fact, the current code can only work if there is no activity
in the constructors. This may explain the pervasive lack of
constructors and reliance on Init() methods throughout the codebase.
The activity takes place in fx_memory.h, where FX_NEW is mapped onto
the std::nothrow syntax. The rest is just cleanup.
Down the road, we will simply throw and remove all the error-checking
paths for new objects. Landing this patch first will at least show a
simple path back to the old behaviour without having to re-introduce
CFX_Object should someone want to do so in their own fork.
R=thestig@chromium.org
Review URL: https://codereview.chromium.org/1088733002
Diffstat (limited to 'core/src/fpdfdoc/pdf_vt.h')
-rw-r--r-- | core/src/fpdfdoc/pdf_vt.h | 10 |
1 files changed, 5 insertions, 5 deletions
diff --git a/core/src/fpdfdoc/pdf_vt.h b/core/src/fpdfdoc/pdf_vt.h index 8fc9c7c099..f910dfd372 100644 --- a/core/src/fpdfdoc/pdf_vt.h +++ b/core/src/fpdfdoc/pdf_vt.h @@ -136,7 +136,7 @@ struct CPVT_LineInfo { FX_FLOAT fLineAscent; FX_FLOAT fLineDescent; }; -struct CPVT_WordInfo : public CFX_Object { +struct CPVT_WordInfo { CPVT_WordInfo() : Word(0), nCharset(0), fWordX(0.0f), fWordY(0.0f), fWordTail(0.0f), nFontIndex(-1), pWordProps(NULL) { @@ -215,7 +215,7 @@ public: } } }; -class CLine : public CFX_Object +class CLine { public: CLine(); @@ -282,7 +282,7 @@ private: CPVT_ArrayTemplate<CLine*> m_Lines; FX_INT32 m_nTotal; }; -class CSection : public CFX_Object +class CSection { friend class CTypeset; public: @@ -400,7 +400,7 @@ private: CPDF_Rect m_rcPlate; CPVT_FloatRect m_rcContent; }; -class CPDF_VariableText : public IPDF_VariableText, public CFX_Object, private CPDF_EditContainer +class CPDF_VariableText : public IPDF_VariableText, private CPDF_EditContainer { friend class CTypeset; friend class CSection; @@ -613,7 +613,7 @@ private: IPDF_VariableText_Provider * m_pVTProvider; CPDF_VariableText_Iterator * m_pVTIterator; }; -class CPDF_VariableText_Iterator : public IPDF_VariableText_Iterator, public CFX_Object +class CPDF_VariableText_Iterator : public IPDF_VariableText_Iterator { public: CPDF_VariableText_Iterator(CPDF_VariableText * pVT); |