summaryrefslogtreecommitdiff
path: root/core/src/fxcodec/jbig2/JBig2_GeneralDecoder.cpp
diff options
context:
space:
mode:
authorLei Zhang <thestig@chromium.org>2015-09-10 16:13:31 -0700
committerLei Zhang <thestig@chromium.org>2015-09-10 16:13:31 -0700
commit89d8b4681ce98894a1ee1a6cf4bae77e00d28797 (patch)
tree352f1ff0bab0f1f812f256c74423aeac5db95e59 /core/src/fxcodec/jbig2/JBig2_GeneralDecoder.cpp
parent70f4404e9a9e69afdfdd07715aa946f6561ce0cb (diff)
downloadpdfium-89d8b4681ce98894a1ee1a6cf4bae77e00d28797.tar.xz
Guard against null image data in CJBig2_GRRDProc.chromium/2509chromium/2508
Credit to karl at skomski.com for the initial version of the CL. BUG=527174 R=tsepez@chromium.org Review URL: https://codereview.chromium.org/1305033006 .
Diffstat (limited to 'core/src/fxcodec/jbig2/JBig2_GeneralDecoder.cpp')
-rw-r--r--core/src/fxcodec/jbig2/JBig2_GeneralDecoder.cpp6
1 files changed, 6 insertions, 0 deletions
diff --git a/core/src/fxcodec/jbig2/JBig2_GeneralDecoder.cpp b/core/src/fxcodec/jbig2/JBig2_GeneralDecoder.cpp
index 2e558ee7e8..1c56db984b 100644
--- a/core/src/fxcodec/jbig2/JBig2_GeneralDecoder.cpp
+++ b/core/src/fxcodec/jbig2/JBig2_GeneralDecoder.cpp
@@ -719,6 +719,9 @@ CJBig2_Image* CJBig2_GRRDProc::decode_Template0_unopt(
CJBig2_Image* CJBig2_GRRDProc::decode_Template0_opt(
CJBig2_ArithDecoder* pArithDecoder,
JBig2ArithCtx* grContext) {
+ if (!GRREFERENCE->m_pData)
+ return nullptr;
+
FX_BOOL LTP, SLTP, bVal;
FX_DWORD CONTEXT;
FX_DWORD line1, line1_r, line2_r, line3_r;
@@ -953,6 +956,9 @@ CJBig2_Image* CJBig2_GRRDProc::decode_Template1_unopt(
CJBig2_Image* CJBig2_GRRDProc::decode_Template1_opt(
CJBig2_ArithDecoder* pArithDecoder,
JBig2ArithCtx* grContext) {
+ if (!GRREFERENCE->m_pData)
+ return nullptr;
+
FX_BOOL LTP, SLTP, bVal;
FX_DWORD CONTEXT;
FX_DWORD line1, line1_r, line2_r, line3_r;