summaryrefslogtreecommitdiff
path: root/core/include/fxge/fpf.h
diff options
context:
space:
mode:
authorTom Sepez <tsepez@chromium.org>2015-01-09 10:46:50 -0800
committerTom Sepez <tsepez@chromium.org>2015-01-09 10:46:50 -0800
commitb9e0190938f62bf21df078e47190a62ba33ddab2 (patch)
tree474749da63ac6890c008f9535b335bebee1d7cc8 /core/include/fxge/fpf.h
parentb07772a31f5dff723af620bc57c71daa246995c0 (diff)
downloadpdfium-b9e0190938f62bf21df078e47190a62ba33ddab2.tar.xz
Fix -Wnon-virtual-dtor compiler warnings.
This is done by explicitly adding a virtual dtor to interface classes, since the cost is small given that there are already virtual functions. The exceptions are for classes that have a Release() or Delete() method, in which case it is non-virtual and protected to indicate that the virtual class is never the deletion point. BUG= R=brucedawson@chromium.org, thestig@chromium.org Review URL: https://codereview.chromium.org/810883005
Diffstat (limited to 'core/include/fxge/fpf.h')
-rw-r--r--core/include/fxge/fpf.h5
1 files changed, 5 insertions, 0 deletions
diff --git a/core/include/fxge/fpf.h b/core/include/fxge/fpf.h
index 99d9b7c999..28d028cfbb 100644
--- a/core/include/fxge/fpf.h
+++ b/core/include/fxge/fpf.h
@@ -12,6 +12,7 @@ class IFPF_Font;
class IFPF_DeviceModule
{
public:
+ virtual ~IFPF_DeviceModule() { }
virtual void Destroy() = 0;
virtual IFPF_FontMgr* GetFontMgr() = 0;
};
@@ -41,10 +42,14 @@ public:
virtual FX_INT32 GetHeight() const = 0;
virtual FX_INT32 GetItalicAngle() const = 0;
virtual FX_DWORD GetFontData(FX_DWORD dwTable, FX_LPBYTE pBuffer, FX_DWORD dwSize) = 0;
+
+protected:
+ ~IFPF_Font() { }
};
class IFPF_FontMgr
{
public:
+ virtual ~IFPF_FontMgr() { }
virtual void LoadSystemFonts() = 0;
virtual void LoadPrivateFont(IFX_FileRead* pFontFile) = 0;
virtual void LoadPrivateFont(FX_BSTR bsFileName) = 0;