summaryrefslogtreecommitdiff
path: root/core/src/fpdfapi/fpdf_font
diff options
context:
space:
mode:
authorTom Sepez <tsepez@chromium.org>2015-04-14 12:54:38 -0700
committerTom Sepez <tsepez@chromium.org>2015-04-14 12:54:38 -0700
commit4926900ab54a493d236291b5a24dfa4476792182 (patch)
treee53800a0569300516c934bfccbb036ce39d98cb3 /core/src/fpdfapi/fpdf_font
parenteddab4425614e49146f904f00da4a664ba4b581b (diff)
downloadpdfium-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/fpdfapi/fpdf_font')
-rw-r--r--core/src/fpdfapi/fpdf_font/font_int.h14
-rw-r--r--core/src/fpdfapi/fpdf_font/fpdf_font.cpp2
-rw-r--r--core/src/fpdfapi/fpdf_font/ttgsubtable.h4
3 files changed, 10 insertions, 10 deletions
diff --git a/core/src/fpdfapi/fpdf_font/font_int.h b/core/src/fpdfapi/fpdf_font/font_int.h
index 43f4e302af..a2d544afe9 100644
--- a/core/src/fpdfapi/fpdf_font/font_int.h
+++ b/core/src/fpdfapi/fpdf_font/font_int.h
@@ -5,7 +5,7 @@
// Original code copyright 2014 Foxit Software Inc. http://www.foxitsoftware.com
typedef void* FXFT_Library;
-class CPDF_CMapManager : public CFX_Object
+class CPDF_CMapManager
{
public:
CPDF_CMapManager();
@@ -22,7 +22,7 @@ private:
CFX_MapByteStringToPtr m_CMaps;
CPDF_CID2UnicodeMap* m_CID2UnicodeMaps[6];
};
-class CPDF_FontGlobals : public CFX_Object
+class CPDF_FontGlobals
{
public:
CPDF_FontGlobals();
@@ -48,7 +48,7 @@ struct _CMap_CodeRange {
FX_BYTE m_Lower[4];
FX_BYTE m_Upper[4];
};
-class CPDF_CMapParser : public CFX_Object
+class CPDF_CMapParser
{
public:
CPDF_CMapParser();
@@ -73,7 +73,7 @@ private:
#define CIDCODING_UCS2 5
#define CIDCODING_CID 6
#define CIDCODING_UTF16 7
-class CPDF_CMap : public CFX_Object
+class CPDF_CMap
{
public:
CPDF_CMap();
@@ -138,7 +138,7 @@ typedef struct _FileHeader {
FX_DWORD dwDataOffset;
FX_DWORD dwRecordSize;
} FXMP_FILEHEADER;
-class CPDF_CID2UnicodeMap : public CFX_Object
+class CPDF_CID2UnicodeMap
{
public:
CPDF_CID2UnicodeMap();
@@ -152,7 +152,7 @@ protected:
const FX_WORD* m_pEmbeddedMap;
FX_DWORD m_EmbeddedCount;
};
-class CPDF_ToUnicodeMap : public CFX_Object
+class CPDF_ToUnicodeMap
{
public:
void Load(CPDF_Stream* pStream);
@@ -163,7 +163,7 @@ protected:
CPDF_CID2UnicodeMap* m_pBaseMap;
CFX_WideTextBuf m_MultiCharBuf;
};
-class CPDF_FontCharMap : public CFX_CharMap, public CFX_Object
+class CPDF_FontCharMap : public CFX_CharMap
{
public:
CPDF_FontCharMap(CPDF_Font* pFont);
diff --git a/core/src/fpdfapi/fpdf_font/fpdf_font.cpp b/core/src/fpdfapi/fpdf_font/fpdf_font.cpp
index 41bb95a89d..91d4010b80 100644
--- a/core/src/fpdfapi/fpdf_font/fpdf_font.cpp
+++ b/core/src/fpdfapi/fpdf_font/fpdf_font.cpp
@@ -35,7 +35,7 @@ CPDF_FontGlobals::~CPDF_FontGlobals()
FX_Free(m_pContrastRamps);
}
}
-class CFX_StockFontArray : public CFX_Object
+class CFX_StockFontArray
{
public:
CFX_StockFontArray()
diff --git a/core/src/fpdfapi/fpdf_font/ttgsubtable.h b/core/src/fpdfapi/fpdf_font/ttgsubtable.h
index 6b1b4f2443..d231c13ca2 100644
--- a/core/src/fpdfapi/fpdf_font/ttgsubtable.h
+++ b/core/src/fpdfapi/fpdf_font/ttgsubtable.h
@@ -19,7 +19,7 @@ public:
protected:
CFX_BinaryBuf m_Buffer;
};
-class CFX_CTTGSUBTable : public CFX_Object
+class CFX_CTTGSUBTable
{
public:
CFX_CTTGSUBTable(void): m_bFeautureMapLoad(FALSE), loaded(false) {};
@@ -406,7 +406,7 @@ private:
struct TFeatureList FeatureList;
struct TLookupList LookupList;
};
-class CFX_GSUBTable FX_FINAL : public IFX_GSUBTable, public CFX_Object
+class CFX_GSUBTable FX_FINAL : public IFX_GSUBTable
{
public:
virtual void Release() FX_OVERRIDE