summaryrefslogtreecommitdiff
path: root/oox
diff options
context:
space:
mode:
authorSzymon Kłos <szymon.klos@collabora.com>2021-04-07 11:00:25 +0200
committerJan Holesovsky <kendy@collabora.com>2021-04-14 10:59:43 +0200
commit5389028154847f05a5138d85645f7d0639e10b16 (patch)
tree580a7d3b5f7f71fbb456cca1e1ed841dd056ad39 /oox
parentf3f4ca409ec619e205ce9af5a4938d6bafac0ca5 (diff)
Don't overwrite existing categories for series
When chart serie has defined categories which are not references we can fail on creating XLabeledDataSequence and in the end overwrite them. Change-Id: Ie8dc76e420fc4a2508df66a6dca80b8023ee895b Reviewed-on: https://gerrit.libreoffice.org/c/core/+/113721 Tested-by: Jenkins CollaboraOffice <jenkinscollaboraoffice@gmail.com> Reviewed-by: Jan Holesovsky <kendy@collabora.com>
Diffstat (limited to 'oox')
-rw-r--r--oox/source/drawingml/chart/typegroupconverter.cxx13
1 files changed, 8 insertions, 5 deletions
diff --git a/oox/source/drawingml/chart/typegroupconverter.cxx b/oox/source/drawingml/chart/typegroupconverter.cxx
index ea02d5ca548b..99bbaebe3101 100644
--- a/oox/source/drawingml/chart/typegroupconverter.cxx
+++ b/oox/source/drawingml/chart/typegroupconverter.cxx
@@ -291,11 +291,14 @@ Reference< XLabeledDataSequence > TypeGroupConverter::createCategorySequence()
if( nMaxValues < 0 )
nMaxValues = 2;
SeriesModel &aModel = *mrModel.maSeries.get(0);
- DataSourceModel &aSrc = aModel.maSources.create( SeriesModel::CATEGORIES );
- DataSequenceModel &aSeq = aSrc.mxDataSeq.create();
- aSeq.mnPointCount = nMaxValues;
- for( sal_Int32 i = 0; i < nMaxValues; i++ )
- aSeq.maData[ i ] <<= OUString::number( i + 1 );
+ if (!aModel.maSources.has(SeriesModel::CATEGORIES))
+ {
+ DataSourceModel &aSrc = aModel.maSources.create( SeriesModel::CATEGORIES );
+ DataSequenceModel &aSeq = aSrc.mxDataSeq.create();
+ aSeq.mnPointCount = nMaxValues;
+ for( sal_Int32 i = 0; i < nMaxValues; i++ )
+ aSeq.maData[ i ] <<= OUString::number( i + 1 );
+ }
SeriesConverter aSeriesConv( *this, aModel );
xLabeledSeq = aSeriesConv.createCategorySequence( "categories" );
}