From 9d687dfa3e341bc4bae7806b6e3262ae3d441889 Mon Sep 17 00:00:00 2001 From: Matt Sarett Date: Fri, 5 May 2017 10:38:01 -0400 Subject: Avoid interpolating color lut with less than 2 points Bug: 717935 Change-Id: Ibf15b815891eef5a0239bc408bcbfe7c8b1507c5 Reviewed-on: https://skia-review.googlesource.com/15301 Commit-Queue: Matt Sarett Reviewed-by: Mike Klein --- tests/ColorSpaceTest.cpp | 15 +++++++++++++-- 1 file changed, 13 insertions(+), 2 deletions(-) (limited to 'tests/ColorSpaceTest.cpp') diff --git a/tests/ColorSpaceTest.cpp b/tests/ColorSpaceTest.cpp index 2eb7347092..9b2e1b3dc6 100644 --- a/tests/ColorSpaceTest.cpp +++ b/tests/ColorSpaceTest.cpp @@ -446,10 +446,21 @@ DEF_TEST(ColorSpace_Primaries, r) { DEF_TEST(ColorSpace_InvalidICC, r) { // This color space has a matrix that is not D50. - sk_sp data = SkData::MakeFromFileName( - GetResourcePath("icc_profiles/SM2333SW.icc").c_str()); + sk_sp data = GetResourceAsData("icc_profiles/SM2333SW.icc"); + if (!data) { + return; + } sk_sp cs = SkColorSpace::MakeICC(data->data(), data->size()); REPORTER_ASSERT(r, !cs); + + // The color space has a color lut with only one entry in each dimension. + data = GetResourceAsData("icc_profiles/invalid_color_lut.icc"); + if (!data) { + return; + } + + cs = SkColorSpace::MakeICC(data->data(), data->size()); + REPORTER_ASSERT(r, !cs); } DEF_TEST(ColorSpace_MatrixHash, r) { -- cgit v1.2.3