summaryrefslogtreecommitdiff
path: root/core/include/fpdfapi/fpdf_parser.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/fpdfapi/fpdf_parser.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/fpdfapi/fpdf_parser.h')
-rw-r--r--core/include/fpdfapi/fpdf_parser.h17
1 files changed, 7 insertions, 10 deletions
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;