| Index: core/src/fxcodec/jbig2/JBig2_Context.cpp
 | 
| diff --git a/core/src/fxcodec/jbig2/JBig2_Context.cpp b/core/src/fxcodec/jbig2/JBig2_Context.cpp
 | 
| index b70054171da8cb001610a002008f51af68febcee..c004c875037881d09723c6c9da8148b14e36ad79 100644
 | 
| --- a/core/src/fxcodec/jbig2/JBig2_Context.cpp
 | 
| +++ b/core/src/fxcodec/jbig2/JBig2_Context.cpp
 | 
| @@ -4,9 +4,17 @@
 | 
|  
 | 
|  // Original code copyright 2014 Foxit Software Inc. http://www.foxitsoftware.com
 | 
|  
 | 
| -#include <list>
 | 
|  #include "JBig2_Context.h"
 | 
|  
 | 
| +#include <list>
 | 
| +
 | 
| +#include "JBig2_GrdProc.h"
 | 
| +#include "JBig2_GrrdProc.h"
 | 
| +#include "JBig2_HtrdProc.h"
 | 
| +#include "JBig2_PddProc.h"
 | 
| +#include "JBig2_SddProc.h"
 | 
| +#include "JBig2_TrdProc.h"
 | 
| +
 | 
|  // Implement a very small least recently used (LRU) cache. It is very
 | 
|  // common for a JBIG2 dictionary to span multiple pages in a PDF file,
 | 
|  // and we do not want to decode the same dictionary over and over
 | 
| @@ -14,7 +22,7 @@
 | 
|  // list keeps track of the freshness of entries, with freshest ones
 | 
|  // at the front. Even a tiny cache size like 2 makes a dramatic
 | 
|  // difference for typical JBIG2 documents.
 | 
| -const int kSymbolDictCacheMaxSize = 2;
 | 
| +static const int kSymbolDictCacheMaxSize = 2;
 | 
|  
 | 
|  CJBig2_Context* CJBig2_Context::CreateContext(
 | 
|      const uint8_t* pGlobalData,
 | 
| @@ -497,13 +505,18 @@ int32_t CJBig2_Context::parseSymbolDict(CJBig2_Segment* pSegment,
 | 
|    FX_DWORD dwTemp;
 | 
|    FX_WORD wFlags;
 | 
|    uint8_t cSDHUFFDH, cSDHUFFDW, cSDHUFFBMSIZE, cSDHUFFAGGINST;
 | 
| -  CJBig2_HuffmanTable *Table_B1 = NULL, *Table_B2 = NULL, *Table_B3 = NULL,
 | 
| -                      *Table_B4 = NULL, *Table_B5 = NULL;
 | 
| +  CJBig2_HuffmanTable* Table_B1 = nullptr;
 | 
| +  CJBig2_HuffmanTable* Table_B2 = nullptr;
 | 
| +  CJBig2_HuffmanTable* Table_B3 = nullptr;
 | 
| +  CJBig2_HuffmanTable* Table_B4 = nullptr;
 | 
| +  CJBig2_HuffmanTable* Table_B5 = nullptr;
 | 
|    int32_t i, nIndex, nRet;
 | 
| -  CJBig2_Segment *pSeg = NULL, *pLRSeg = NULL;
 | 
| +  CJBig2_Segment* pSeg = nullptr;
 | 
| +  CJBig2_Segment* pLRSeg = nullptr;
 | 
|    FX_BOOL bUsed;
 | 
| -  CJBig2_Image** SDINSYMS = NULL;
 | 
| -  JBig2ArithCtx *gbContext = NULL, *grContext = NULL;
 | 
| +  CJBig2_Image** SDINSYMS = nullptr;
 | 
| +  JBig2ArithCtx* gbContext = nullptr;
 | 
| +  JBig2ArithCtx* grContext = nullptr;
 | 
|    CJBig2_ArithDecoder* pArithDecoder;
 | 
|    CJBig2_SDDProc* pSymbolDictDecoder = new CJBig2_SDDProc();
 | 
|    const uint8_t* key = pSegment->m_pData;
 | 
| @@ -767,15 +780,22 @@ int32_t CJBig2_Context::parseTextRegion(CJBig2_Segment* pSegment) {
 | 
|    int32_t i, nIndex, nRet;
 | 
|    JBig2RegionInfo ri;
 | 
|    CJBig2_Segment* pSeg;
 | 
| -  CJBig2_Image** SBSYMS = NULL;
 | 
| -  JBig2HuffmanCode* SBSYMCODES = NULL;
 | 
| +  CJBig2_Image** SBSYMS = nullptr;
 | 
| +  JBig2HuffmanCode* SBSYMCODES = nullptr;
 | 
|    uint8_t cSBHUFFFS, cSBHUFFDS, cSBHUFFDT, cSBHUFFRDW, cSBHUFFRDH, cSBHUFFRDX,
 | 
|        cSBHUFFRDY, cSBHUFFRSIZE;
 | 
| -  CJBig2_HuffmanTable *Table_B1 = NULL, *Table_B6 = NULL, *Table_B7 = NULL,
 | 
| -                      *Table_B8 = NULL, *Table_B9 = NULL, *Table_B10 = NULL,
 | 
| -                      *Table_B11 = NULL, *Table_B12 = NULL, *Table_B13 = NULL,
 | 
| -                      *Table_B14 = NULL, *Table_B15 = NULL;
 | 
| -  JBig2ArithCtx* grContext = NULL;
 | 
| +  CJBig2_HuffmanTable* Table_B1 = nullptr;
 | 
| +  CJBig2_HuffmanTable* Table_B6 = nullptr;
 | 
| +  CJBig2_HuffmanTable* Table_B7 = nullptr;
 | 
| +  CJBig2_HuffmanTable* Table_B8 = nullptr;
 | 
| +  CJBig2_HuffmanTable* Table_B9 = nullptr;
 | 
| +  CJBig2_HuffmanTable* Table_B10 = nullptr;
 | 
| +  CJBig2_HuffmanTable* Table_B11 = nullptr;
 | 
| +  CJBig2_HuffmanTable* Table_B12 = nullptr;
 | 
| +  CJBig2_HuffmanTable* Table_B13 = nullptr;
 | 
| +  CJBig2_HuffmanTable* Table_B14 = nullptr;
 | 
| +  CJBig2_HuffmanTable* Table_B15 = nullptr;
 | 
| +  JBig2ArithCtx* grContext = nullptr;
 | 
|    CJBig2_ArithDecoder* pArithDecoder;
 | 
|    CJBig2_TRDProc* pTRD = new CJBig2_TRDProc();
 | 
|    if ((parseRegionInfo(&ri) != JBIG2_SUCCESS) ||
 | 
| 
 |