diff options
author | Caolán McNamara <caolanm@redhat.com> | 2021-05-26 14:44:02 +0100 |
---|---|---|
committer | Andras Timar <andras.timar@collabora.com> | 2021-05-27 08:28:22 +0200 |
commit | 18dda8ed5ec0d77648e795ba995a324d0cbbdeca (patch) | |
tree | 144e802022bc6e4dd777af3bcd9bb9aa07c4d84c | |
parent | 29155d89275c0a67aefc9a733ee7047462912cd3 (diff) |
tdf#142467 crash on calling 'getInfoHelper' in final class
IPropertyArrayHelper & rInfo = getInfoHelper(); crashes when
CandleStickChartType is final for unknown reasons. I see this with
gcc-11.1.1-1.fc34.x86_64 in 7-1 locally but also in the fedora
libreoffice-7.0.6 built with gcc-10 so this isn't a recent problem.
#1 0x00007ffff6f4fe91 in cppu::OPropertySetHelper::getFastPropertyValue(int) (this=this@entry=0x5bdd588, nHandle=nHandle@entry=3) at cppuhelper/source/propshlp.cxx:549
#2 0x00007fffad45e9ff in chart::CandleStickChartType::getSupportedMandatoryRoles() (this=0x5bdd520) at chart2/source/model/template/CandleStickChartType.cxx:219
Change-Id: Ia029162587da1fc00df32866863deb186c7e11bb
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/116153
Tested-by: Jenkins
Reviewed-by: Xisco Fauli <xiscofauli@libreoffice.org>
-rw-r--r-- | chart2/source/model/template/CandleStickChartType.hxx | 3 | ||||
-rw-r--r-- | compilerplugins/clang/fragiledestructor.cxx | 2 |
2 files changed, 4 insertions, 1 deletions
diff --git a/chart2/source/model/template/CandleStickChartType.hxx b/chart2/source/model/template/CandleStickChartType.hxx index 00c2747bc7af..969c14c24d35 100644 --- a/chart2/source/model/template/CandleStickChartType.hxx +++ b/chart2/source/model/template/CandleStickChartType.hxx @@ -23,7 +23,8 @@ namespace chart { -class CandleStickChartType final : public ChartType +// see tdf#142467 before restoring 'final' +class CandleStickChartType /* final */ : public ChartType { public: explicit CandleStickChartType(); diff --git a/compilerplugins/clang/fragiledestructor.cxx b/compilerplugins/clang/fragiledestructor.cxx index a1a09a2e6081..9bce19ccda27 100644 --- a/compilerplugins/clang/fragiledestructor.cxx +++ b/compilerplugins/clang/fragiledestructor.cxx @@ -51,6 +51,8 @@ public: return false; if (loplugin::isSamePathname(fn, SRCDIR "/sw/source/core/layout/ssfrm.cxx")) // ~SwFrame calling IsDeleteForbidden return false; + if (loplugin::isSamePathname(fn, SRCDIR "/chart2/source/model/template/CandleStickChartType.cxx")) // to ignore tdf#142467 workaround + return false; return true; } |