[Libreoffice-commits] core.git: include/editeng include/svl sc/source
Stephan Bergmann
sbergman at redhat.com
Tue Jan 12 05:50:41 PST 2016
include/editeng/flditem.hxx | 18 +++++++++---------
include/svl/poolitem.hxx | 2 +-
sc/source/ui/inc/docsh.hxx | 2 +-
3 files changed, 11 insertions(+), 11 deletions(-)
New commits:
commit 548c43238d02b34cf73e7c2ca1a912ee4fe82544
Author: Stephan Bergmann <sbergman at redhat.com>
Date: Tue Jan 12 14:44:42 2016 +0100
Mark some classes as final
...namely exactly those for which fa91dd31f39a24329d288d4e1cda28db3a16af0d
"5th step to remove tools/rtti.hxx" (which is assumed the culprit in tdf#96067
"Crash on undo row inserts") had replaced exact-type checks of the form
v->Type() == TYPE(X)
with type-or-subtype-of checks of the form
dynamic_cast<X *>(v) != nullptr
which is only sound if X is a final class. (Except for one case already handled
differently in 791ad3e170bcb5a2daedac77932dc9822f7f1092 "Stick to exact-type
check.")
Change-Id: Ia822c55c7c0e982d42c6a97589307e577721e324
diff --git a/include/editeng/flditem.hxx b/include/editeng/flditem.hxx
index 2dcaa06..bef6297 100644
--- a/include/editeng/flditem.hxx
+++ b/include/editeng/flditem.hxx
@@ -177,7 +177,7 @@ public:
virtual MetaAction* createBeginComment() const override;
};
-class EDITENG_DLLPUBLIC SvxPageField : public SvxFieldData
+class EDITENG_DLLPUBLIC SvxPageField final: public SvxFieldData
{
public:
SV_DECL_PERSIST1( SvxPageField, SvxFieldData, css::text::textfield::Type::PAGE )
@@ -189,7 +189,7 @@ public:
virtual MetaAction* createBeginComment() const override;
};
-class EDITENG_DLLPUBLIC SvxPageTitleField : public SvxFieldData
+class EDITENG_DLLPUBLIC SvxPageTitleField final: public SvxFieldData
{
public:
SV_DECL_PERSIST1( SvxPageTitleField, SvxFieldData, css::text::textfield::Type::PAGE_NAME )
@@ -201,7 +201,7 @@ public:
virtual MetaAction* createBeginComment() const override;
};
-class EDITENG_DLLPUBLIC SvxPagesField : public SvxFieldData
+class EDITENG_DLLPUBLIC SvxPagesField final: public SvxFieldData
{
public:
SV_DECL_PERSIST1( SvxPagesField, SvxFieldData, css::text::textfield::Type::PAGES )
@@ -211,7 +211,7 @@ public:
virtual bool operator==( const SvxFieldData& ) const override;
};
-class EDITENG_DLLPUBLIC SvxTimeField : public SvxFieldData
+class EDITENG_DLLPUBLIC SvxTimeField final: public SvxFieldData
{
public:
SV_DECL_PERSIST1( SvxTimeField, SvxFieldData, css::text::textfield::Type::TIME )
@@ -223,7 +223,7 @@ public:
virtual MetaAction* createBeginComment() const override;
};
-class EDITENG_DLLPUBLIC SvxFileField : public SvxFieldData
+class EDITENG_DLLPUBLIC SvxFileField final: public SvxFieldData
{
public:
SV_DECL_PERSIST1( SvxFileField, SvxFieldData, css::text::textfield::Type::DOCINFO_TITLE )
@@ -233,7 +233,7 @@ public:
virtual bool operator==( const SvxFieldData& ) const override;
};
-class EDITENG_DLLPUBLIC SvxTableField : public SvxFieldData
+class EDITENG_DLLPUBLIC SvxTableField final: public SvxFieldData
{
int mnTab;
public:
@@ -378,7 +378,7 @@ public:
/** this field is used as a placeholder for a header&footer in impress. The actual
value is stored at the page */
-class EDITENG_DLLPUBLIC SvxHeaderField : public SvxFieldData
+class EDITENG_DLLPUBLIC SvxHeaderField final: public SvxFieldData
{
public:
SV_DECL_PERSIST1( SvxHeaderField, SvxFieldData, css::text::textfield::Type::PRESENTATION_HEADER )
@@ -390,7 +390,7 @@ public:
/** this field is used as a placeholder for a header&footer in impress. The actual
value is stored at the page */
-class EDITENG_DLLPUBLIC SvxFooterField : public SvxFieldData
+class EDITENG_DLLPUBLIC SvxFooterField final: public SvxFieldData
{
public:
SV_DECL_PERSIST1( SvxFooterField, SvxFieldData, css::text::textfield::Type::PRESENTATION_FOOTER )
@@ -401,7 +401,7 @@ public:
/** this field is used as a placeholder for a header&footer in impress. The actual
value is stored at the page */
-class EDITENG_DLLPUBLIC SvxDateTimeField : public SvxFieldData
+class EDITENG_DLLPUBLIC SvxDateTimeField final: public SvxFieldData
{
public:
SV_DECL_PERSIST1( SvxDateTimeField, SvxFieldData, css::text::textfield::Type::PRESENTATION_DATE_TIME )
diff --git a/include/svl/poolitem.hxx b/include/svl/poolitem.hxx
index 6f143bb..0ae6bea 100644
--- a/include/svl/poolitem.hxx
+++ b/include/svl/poolitem.hxx
@@ -247,7 +247,7 @@ inline bool IsInvalidItem(const SfxPoolItem *pItem)
return pItem == reinterpret_cast<SfxPoolItem *>(-1);
}
-class SVL_DLLPUBLIC SfxVoidItem: public SfxPoolItem
+class SVL_DLLPUBLIC SfxVoidItem final: public SfxPoolItem
{
SfxVoidItem & operator=( const SfxVoidItem& ) = delete;
public:
diff --git a/sc/source/ui/inc/docsh.hxx b/sc/source/ui/inc/docsh.hxx
index 93c5b4c..82b0f49 100644
--- a/sc/source/ui/inc/docsh.hxx
+++ b/sc/source/ui/inc/docsh.hxx
@@ -80,7 +80,7 @@ typedef std::unordered_map< sal_uLong, sal_uLong > ScChangeActionMergeMap;
#define SC_PF_TESTMERGE 2
#define SC_PF_WHOLEROWS 4
-class SC_DLLPUBLIC ScDocShell: public SfxObjectShell, public SfxListener
+class SC_DLLPUBLIC ScDocShell final: public SfxObjectShell, public SfxListener
{
ScDocument aDocument;
More information about the Libreoffice-commits
mailing list