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/fpdfdoc/fpdf_vt.h | 7 +++++-- 1 file changed, 5 insertions(+), 2 deletions(-) (limited to 'core/include/fpdfdoc/fpdf_vt.h') diff --git a/core/include/fpdfdoc/fpdf_vt.h b/core/include/fpdfdoc/fpdf_vt.h index 41025cbe2e..3e23c3a1a3 100644 --- a/core/include/fpdfdoc/fpdf_vt.h +++ b/core/include/fpdfdoc/fpdf_vt.h @@ -275,6 +275,7 @@ struct CPVT_Section { class IPDF_VariableText_Provider { public: + virtual ~IPDF_VariableText_Provider() { } virtual FX_INT32 GetCharWidth(FX_INT32 nFontIndex, FX_WORD word, FX_INT32 nWordStyle) = 0; @@ -291,6 +292,7 @@ public: class IPDF_VariableText_Iterator { public: + virtual ~IPDF_VariableText_Iterator() { } virtual FX_BOOL NextWord() = 0; @@ -323,11 +325,9 @@ public: class IPDF_VariableText { public: - static IPDF_VariableText* NewVariableText(); static void DelVariableText(IPDF_VariableText* pVT); -public: virtual IPDF_VariableText_Provider* SetProvider(IPDF_VariableText_Provider * pProvider) = 0; @@ -440,5 +440,8 @@ public: virtual FX_INT32 WordPlaceToWordIndex(const CPVT_WordPlace & place) const = 0; virtual CPVT_WordPlace WordIndexToWordPlace(FX_INT32 index) const = 0; + +protected: + ~IPDF_VariableText() { } }; #endif -- cgit v1.2.3