From b9e0190938f62bf21df078e47190a62ba33ddab2 Mon Sep 17 00:00:00 2001 From: Tom Sepez Date: Fri, 9 Jan 2015 10:46:50 -0800 Subject: 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 --- core/include/fpdfapi/fpdf_parser.h | 17 +++++++---------- core/include/fpdfapi/fpdf_render.h | 2 +- 2 files changed, 8 insertions(+), 11 deletions(-) (limited to 'core/include/fpdfapi') diff --git a/core/include/fpdfapi/fpdf_parser.h b/core/include/fpdfapi/fpdf_parser.h index da22dc72ca..d2fdad4cfb 100644 --- a/core/include/fpdfapi/fpdf_parser.h +++ b/core/include/fpdfapi/fpdf_parser.h @@ -49,7 +49,7 @@ class CFX_PrivateData; class IPDF_EnumPageHandler { public: - + virtual ~IPDF_EnumPageHandler() { } virtual FX_BOOL EnumPage(CPDF_Dictionary* pPageDict) = 0; }; class CPDF_Document : public CFX_PrivateData, public CPDF_IndirectObjects @@ -247,8 +247,7 @@ class CPDF_SyntaxParser : public CFX_Object public: CPDF_SyntaxParser(); - - ~CPDF_SyntaxParser(); + virtual ~CPDF_SyntaxParser(); void InitParser(IFX_FileRead* pFileAccess, FX_DWORD HeaderOffset); @@ -366,7 +365,7 @@ struct PARSE_CONTEXT { class IPDF_DocParser : public CFX_Object { public: - + virtual ~IPDF_DocParser() { } virtual FX_DWORD GetRootObjNum() = 0; virtual FX_DWORD GetInfoObjNum() = 0; @@ -402,8 +401,7 @@ class CPDF_Parser FX_FINAL : public IPDF_DocParser public: CPDF_Parser(); - - ~CPDF_Parser(); + ~CPDF_Parser() override; FX_DWORD StartParse(FX_LPCSTR filename, FX_BOOL bReParse = FALSE); @@ -853,13 +851,13 @@ protected: class IFX_FileAvail { public: - + virtual ~IFX_FileAvail() { } virtual FX_BOOL IsDataAvail( FX_FILESIZE offset, FX_DWORD size) = 0; }; class IFX_DownloadHints { public: - + virtual ~IFX_DownloadHints() { } virtual void AddSegment(FX_FILESIZE offset, FX_DWORD size) = 0; }; #define PDF_IS_LINEARIZED 1 @@ -871,13 +869,12 @@ public: class IPDF_DataAvail { public: + virtual ~IPDF_DataAvail() { } virtual FX_BOOL IsDocAvail(IFX_DownloadHints* pHints) = 0; - virtual void SetDocument(CPDF_Document* pDoc) = 0; - virtual FX_BOOL IsPageAvail(int iPage, IFX_DownloadHints* pHints) = 0; virtual FX_BOOL IsLinearized() = 0; diff --git a/core/include/fpdfapi/fpdf_render.h b/core/include/fpdfapi/fpdf_render.h index c059bedb2b..e2801f61f2 100644 --- a/core/include/fpdfapi/fpdf_render.h +++ b/core/include/fpdfapi/fpdf_render.h @@ -138,7 +138,7 @@ protected: class IPDF_BackgroundDraw { public: - + virtual ~IPDF_BackgroundDraw() { } virtual void OnDrawBackground( CFX_RenderDevice* pBitmapDevice, const CFX_AffineMatrix* pOriginal2Bitmap -- cgit v1.2.3