Error handling for invalid component number in CPDF_ICCBasedCS::v_Load
authorJun Fang <jun_fang@foxitsoftware.com>
Wed, 16 Jul 2014 03:42:53 +0000 (20:42 -0700)
committerJun Fang <jun_fang@foxitsoftware.com>
Wed, 16 Jul 2014 03:42:53 +0000 (20:42 -0700)
BUG=386728
R=palmer@chromium.org

Review URL: https://codereview.chromium.org/397803002

core/src/fpdfapi/fpdf_page/fpdf_page_colors.cpp

index 408a553..1cd1097 100644 (file)
@@ -582,7 +582,7 @@ FX_BOOL CPDF_ICCBasedCS::v_Load(CPDF_Document* pDoc, CPDF_Array* pArray)
     }
     CPDF_Dictionary* pDict = pStream->GetDict();
     m_nComponents = pDict ? pDict->GetInteger(FX_BSTRC("N")) : 0;
-    if (m_nComponents < 0 || m_nComponents > (1 << 16)) {
+    if (m_nComponents <= 0 || m_nComponents > (1 << 16)) {
         return FALSE;
     }
     CPDF_Array* pRanges = pDict->GetArray(FX_BSTRC("Range"));