From 08dd90f9a5b2f63999cc51fe72b48e1c26fca864 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Caol=C3=A1n=20McNamara?= Date: Wed, 2 Jul 2025 12:06:00 +0100 Subject: [PATCH] null-deref of m_xChartDoc seen MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit #0 0x00007d2c10f56497 in rtl::Reference::Reference (handle=..., this=) at include/rtl/ref.hxx:79 #1 chart::ReferenceSizeProvider::setValuesAtAllDataSeries (this=0x7ffce60d8d70) at chart2/source/tools/ReferenceSizeProvider.cxx:95 #2 0x00007d2c10cd6a1f in chart::ChartController::impl_adaptDataSeriesAutoResize (this=) at chart2/source/controller/main/ChartController_Tools.cxx:192 #3 0x00007d2c10cb3cec in operator() (nResult=, __closure=) at chart2/source/controller/main/ChartController.cxx:1672 #4 std::__invoke_impl&, int> (__f=...) at /opt/rh/devtoolset-12/root/usr/include/c++/12/bits/invoke.h:61 #5 std::__invoke_r&, int> (__fn=...) at /opt/rh/devtoolset-12/root/usr/include/c++/12/bits/invoke.h:111 #6 std::_Function_handler >::_M_invoke(const std::_Any_data &, int &&) (__functor=..., __args#0=) at /opt/rh/devtoolset-12/root/usr/include/c++/12/bits/std_function.h:290 #7 0x00007d2c134e2268 in std::function::operator()(int) const (__args#0=, this=0x7ffce60d8de0) at /opt/rh/devtoolset-12/root/usr/include/c++/12/bits/std_function.h:591 #8 Dialog::EndDialog (this=0x4abc7140, nResult=) at vcl/source/window/dialog.cxx:1213 (gdb) print m_xChartDoc $3 = {m_pBody = 0x0} Change-Id: I6f2cdb176cf1acc7b000e24fa314a6cbe344a525 Reviewed-on: https://gerrit.libreoffice.org/c/core/+/187277 Tested-by: Jenkins Reviewed-by: Caolán McNamara --- chart2/source/tools/ReferenceSizeProvider.cxx | 2 ++ 1 file changed, 2 insertions(+) diff --git a/chart2/source/tools/ReferenceSizeProvider.cxx b/chart2/source/tools/ReferenceSizeProvider.cxx index 6135724dca5d..d7ae7f76a2fd 100644 --- a/chart2/source/tools/ReferenceSizeProvider.cxx +++ b/chart2/source/tools/ReferenceSizeProvider.cxx @@ -92,6 +92,8 @@ void ReferenceSizeProvider::setValuesAtTitle( void ReferenceSizeProvider::setValuesAtAllDataSeries() { + if (!m_xChartDoc) + return; rtl::Reference< Diagram > xDiagram( m_xChartDoc->getFirstChartDiagram()); if (!xDiagram) return;