diff options
author | Laurent Balland-Poirier <laurent.balland-poirier@laposte.net> | 2015-06-17 15:15:07 +0200 |
---|---|---|
committer | Andras Timar <andras.timar@collabora.com> | 2015-08-20 14:14:04 +0200 |
commit | 5b4da012874829e11d98a10aafaf49c61792706e (patch) | |
tree | 29a1f76736e4a75ec093060c1cabdc042ac66756 /chart2 | |
parent | c7724e73abaf2bfd1490cfeae1c8ab0244f126e7 (diff) |
tdf#76649 Skip NaN initial values for min and max
min and max were initiated as aValuesX[0] which could be NaN
test i before evaluating aValuesX[i]
Change-Id: I0246913dcf427e59fd354321eeffa7c08c41c08d
Reviewed-on: https://gerrit.libreoffice.org/17772
Tested-by: Jenkins <ci@libreoffice.org>
Reviewed-by: Caolán McNamara <caolanm@redhat.com>
Tested-by: Caolán McNamara <caolanm@redhat.com>
Diffstat (limited to 'chart2')
-rw-r--r-- | chart2/source/view/main/VDataSeries.cxx | 8 |
1 files changed, 6 insertions, 2 deletions
diff --git a/chart2/source/view/main/VDataSeries.cxx b/chart2/source/view/main/VDataSeries.cxx index 043cbaae673c..18614b14c821 100644 --- a/chart2/source/view/main/VDataSeries.cxx +++ b/chart2/source/view/main/VDataSeries.cxx @@ -520,9 +520,13 @@ void VDataSeries::getMinMaxXValue(double& fMin, double& fMax) const if(aValuesX.getLength() > 0) { - fMax = fMin = aValuesX[0]; + sal_Int32 i = 0; + while ( i < aValuesX.getLength() && ::rtl::math::isNan( aValuesX[i] ) ) + i++; + if ( i < aValuesX.getLength() ) + fMax = fMin = aValuesX[i++]; - for (sal_Int32 i = 1; i < aValuesX.getLength(); i++) + for ( ; i < aValuesX.getLength(); i++) { const double aValue = aValuesX[i]; if ( aValue > fMax) |