diff options
Diffstat (limited to 'src/core/SkColorSpace_ICC.cpp')
-rw-r--r-- | src/core/SkColorSpace_ICC.cpp | 4 |
1 files changed, 4 insertions, 0 deletions
diff --git a/src/core/SkColorSpace_ICC.cpp b/src/core/SkColorSpace_ICC.cpp index 9c2082af7f..6d4bba26bd 100644 --- a/src/core/SkColorSpace_ICC.cpp +++ b/src/core/SkColorSpace_ICC.cpp @@ -1185,7 +1185,11 @@ static inline int icf_channels(SkColorSpace_Base::ICCTypeFlag iccType) { static bool load_a2b0(std::vector<SkColorSpace_A2B::Element>* elements, const uint8_t* src, size_t len, SkColorSpace_A2B::PCS pcs, SkColorSpace_Base::ICCTypeFlag iccType) { + if (len < 4) { + return false; + } const uint32_t type = read_big_endian_u32(src); + switch (type) { case kTAG_AtoBType: if (len < 32) { |