summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorCaolán McNamara <caolanm@redhat.com>2021-05-26 14:44:02 +0100
committerAndras Timar <andras.timar@collabora.com>2021-05-27 08:28:22 +0200
commit18dda8ed5ec0d77648e795ba995a324d0cbbdeca (patch)
tree144e802022bc6e4dd777af3bcd9bb9aa07c4d84c
parent29155d89275c0a67aefc9a733ee7047462912cd3 (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.hxx3
-rw-r--r--compilerplugins/clang/fragiledestructor.cxx2
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;
}