diff options
-rw-r--r-- | sc/qa/unit/data/xlsx/tdf156028.xlsx | bin | 0 -> 8251 bytes | |||
-rw-r--r-- | sc/qa/unit/subsequent_filters_test.cxx | 11 | ||||
-rw-r--r-- | sc/source/core/data/colorscale.cxx | 2 |
3 files changed, 12 insertions, 1 deletions
diff --git a/sc/qa/unit/data/xlsx/tdf156028.xlsx b/sc/qa/unit/data/xlsx/tdf156028.xlsx Binary files differnew file mode 100644 index 000000000000..6fc2fc814fe3 --- /dev/null +++ b/sc/qa/unit/data/xlsx/tdf156028.xlsx diff --git a/sc/qa/unit/subsequent_filters_test.cxx b/sc/qa/unit/subsequent_filters_test.cxx index f633073c85f9..d02ebc075e3e 100644 --- a/sc/qa/unit/subsequent_filters_test.cxx +++ b/sc/qa/unit/subsequent_filters_test.cxx @@ -134,6 +134,17 @@ CPPUNIT_TEST_FIXTURE(ScFiltersTest, testTdf155321_CondFormatColor_XLSX) CPPUNIT_ASSERT_EQUAL(Color(99, 190, 123), aColor); } +CPPUNIT_TEST_FIXTURE(ScFiltersTest, testTdf156028_ColorScale_XLSX) +{ + createScDoc("xlsx/tdf156028.xlsx"); + + ScDocument* pDoc = getScDoc(); + ScConditionalFormat* pCondFormat = pDoc->GetCondFormat(0, 0, 0); + ScRefCellValue aCellA1(*pDoc, ScAddress(0, 0, 0)); + Color aColor = pCondFormat->GetData(aCellA1, ScAddress(0, 0, 0)).mxColorScale.value(); + CPPUNIT_ASSERT_EQUAL(Color(99, 190, 123), aColor); +} + CPPUNIT_TEST_FIXTURE(ScFiltersTest, testTdf138601_CondFormatXLSX) { createScDoc("xlsx/tdf138601.xlsx"); diff --git a/sc/source/core/data/colorscale.cxx b/sc/source/core/data/colorscale.cxx index 4e61dbdbc228..20ea2b5186f6 100644 --- a/sc/source/core/data/colorscale.cxx +++ b/sc/source/core/data/colorscale.cxx @@ -647,7 +647,7 @@ std::optional<Color> ScColorScaleFormat::GetColor( const ScAddress& rAddr ) cons calcMinMax(nMin, nMax); // this check is for safety - if(nMin >= nMax) + if(nMin > nMax) return std::optional<Color>(); ScColorScaleEntries::const_iterator itr = begin(); |