Fix processing of SunRaster images with negative maplength
authorStefan Cornelius <scorneli@redhat.com>
Wed, 24 Jun 2015 22:17:49 +0000 (00:17 +0200)
committerStefan Cornelius <scorneli@redhat.com>
Wed, 24 Jun 2015 22:17:49 +0000 (00:17 +0200)
modules/imgcodecs/src/grfmt_sunras.cpp

index 6cbefef..34e5c4e 100644 (file)
@@ -96,7 +96,7 @@ bool  SunRasterDecoder::readHeader()
             (m_encoding == RAS_OLD || m_encoding == RAS_STANDARD ||
              (m_type == RAS_BYTE_ENCODED && m_bpp == 8) || m_type == RAS_FORMAT_RGB) &&
             ((m_maptype == RMT_NONE && m_maplength == 0) ||
-             (m_maptype == RMT_EQUAL_RGB && m_maplength <= palSize && m_bpp <= 8)))
+             (m_maptype == RMT_EQUAL_RGB && m_maplength <= palSize && m_maplength > 0 && m_bpp <= 8)))
         {
             memset( m_palette, 0, sizeof(m_palette));