Cleanup: Do not check pointers before deleting them.
[pdfium.git] / core / src / fxcodec / jbig2 / JBig2_Context.h
index f46530e..6e47a8a 100644 (file)
@@ -1,20 +1,23 @@
 // Copyright 2014 PDFium Authors. All rights reserved.
 // Use of this source code is governed by a BSD-style license that can be
 // found in the LICENSE file.
+
 // Original code copyright 2014 Foxit Software Inc. http://www.foxitsoftware.com
 
 #ifndef _JBIG2_CONTEXT_H_
 #define _JBIG2_CONTEXT_H_
+
+#include <list>
+#include <utility>
+
 #include "JBig2_Module.h"
 #include "JBig2_List.h"
 #include "JBig2_Segment.h"
 #include "JBig2_Page.h"
 #include "JBig2_GeneralDecoder.h"
 #include "../../../include/fxcodec/fx_codec_def.h"
-#include "../../../include/fxcrt/fx_basic.h"
-#include <utility>
-typedef std::pair<FX_BYTE*, CJBig2_SymbolDict*> CJBig2_CachePair;
+
+typedef std::pair<uint8_t*, CJBig2_SymbolDict*> CJBig2_CachePair;
 typedef enum {
     JBIG2_OUT_OF_PAGE = 0,
     JBIG2_IN_PAGE,
@@ -37,64 +40,64 @@ class CJBig2_Context : public CJBig2_Object
 {
 public:
 
-    static CJBig2_Context *CreateContext(CJBig2_Module *pModule, FX_BYTE *pGlobalData, FX_DWORD dwGlobalLength,
-                                         FX_BYTE *pData, FX_DWORD dwLength, FX_INT32 nStreamType, std::list<CJBig2_CachePair>* pSymbolDictCache, IFX_Pause* pPause = NULL);
+    static CJBig2_Context *CreateContext(CJBig2_Module *pModule, uint8_t *pGlobalData, FX_DWORD dwGlobalLength,
+                                         uint8_t *pData, FX_DWORD dwLength, int32_t nStreamType, std::list<CJBig2_CachePair>* pSymbolDictCache, IFX_Pause* pPause = NULL);
 
     static void DestroyContext(CJBig2_Context *pContext);
 
-    FX_INT32 getFirstPage(FX_BYTE *pBuf, FX_INT32 width, FX_INT32 height, FX_INT32 stride, IFX_Pause* pPause);
+    int32_t getFirstPage(uint8_t *pBuf, int32_t width, int32_t height, int32_t stride, IFX_Pause* pPause);
 
-    FX_INT32 getNextPage(FX_BYTE *pBuf, FX_INT32 width, FX_INT32 height, FX_INT32 stride, IFX_Pause* pPause);
+    int32_t getNextPage(uint8_t *pBuf, int32_t width, int32_t height, int32_t stride, IFX_Pause* pPause);
 
-    FX_INT32 getFirstPage(CJBig2_Image **image, IFX_Pause* pPause);
+    int32_t getFirstPage(CJBig2_Image **image, IFX_Pause* pPause);
 
-    FX_INT32 getNextPage(CJBig2_Image **image, IFX_Pause* pPause);
-    FX_INT32 Continue(IFX_Pause* pPause);
+    int32_t getNextPage(CJBig2_Image **image, IFX_Pause* pPause);
+    int32_t Continue(IFX_Pause* pPause);
     FXCODEC_STATUS GetProcessiveStatus()
     {
         return m_ProcessiveStatus;
     };
 private:
 
-    CJBig2_Context(FX_BYTE *pGlobalData, FX_DWORD dwGlobalLength,
-                   FX_BYTE *pData, FX_DWORD dwLength, FX_INT32 nStreamType, std::list<CJBig2_CachePair>* pSymbolDictCache, IFX_Pause* pPause);
+    CJBig2_Context(uint8_t *pGlobalData, FX_DWORD dwGlobalLength,
+                   uint8_t *pData, FX_DWORD dwLength, int32_t nStreamType, std::list<CJBig2_CachePair>* pSymbolDictCache, IFX_Pause* pPause);
 
     ~CJBig2_Context();
 
-    FX_INT32 decodeFile(IFX_Pause* pPause);
+    int32_t decodeFile(IFX_Pause* pPause);
 
-    FX_INT32 decode_SquentialOrgnazation(IFX_Pause* pPause);
+    int32_t decode_SquentialOrgnazation(IFX_Pause* pPause);
 
-    FX_INT32 decode_EmbedOrgnazation(IFX_Pause* pPause);
+    int32_t decode_EmbedOrgnazation(IFX_Pause* pPause);
 
-    FX_INT32 decode_RandomOrgnazation_FirstPage(IFX_Pause* pPause);
+    int32_t decode_RandomOrgnazation_FirstPage(IFX_Pause* pPause);
 
-    FX_INT32 decode_RandomOrgnazation(IFX_Pause* pPause);
+    int32_t decode_RandomOrgnazation(IFX_Pause* pPause);
 
     CJBig2_Segment *findSegmentByNumber(FX_DWORD dwNumber);
 
-    CJBig2_Segment *findReferredSegmentByTypeAndIndex(CJBig2_Segment *pSegment, FX_BYTE cType, FX_INT32 nIndex);
+    CJBig2_Segment *findReferredSegmentByTypeAndIndex(CJBig2_Segment *pSegment, uint8_t cType, int32_t nIndex);
 
-    FX_INT32 parseSegmentHeader(CJBig2_Segment *pSegment);
+    int32_t parseSegmentHeader(CJBig2_Segment *pSegment);
 
-    FX_INT32 parseSegmentData(CJBig2_Segment *pSegment, IFX_Pause* pPause);
-    FX_INT32 ProcessiveParseSegmentData(CJBig2_Segment *pSegment, IFX_Pause* pPause);
+    int32_t parseSegmentData(CJBig2_Segment *pSegment, IFX_Pause* pPause);
+    int32_t ProcessiveParseSegmentData(CJBig2_Segment *pSegment, IFX_Pause* pPause);
 
-    FX_INT32 parseSymbolDict(CJBig2_Segment *pSegment, IFX_Pause* pPause);
+    int32_t parseSymbolDict(CJBig2_Segment *pSegment, IFX_Pause* pPause);
 
-    FX_INT32 parseTextRegion(CJBig2_Segment *pSegment);
+    int32_t parseTextRegion(CJBig2_Segment *pSegment);
 
-    FX_INT32 parsePatternDict(CJBig2_Segment *pSegment, IFX_Pause* pPause);
+    int32_t parsePatternDict(CJBig2_Segment *pSegment, IFX_Pause* pPause);
 
-    FX_INT32 parseHalftoneRegion(CJBig2_Segment *pSegment, IFX_Pause* pPause);
+    int32_t parseHalftoneRegion(CJBig2_Segment *pSegment, IFX_Pause* pPause);
 
-    FX_INT32 parseGenericRegion(CJBig2_Segment *pSegment, IFX_Pause* pPause);
+    int32_t parseGenericRegion(CJBig2_Segment *pSegment, IFX_Pause* pPause);
 
-    FX_INT32 parseGenericRefinementRegion(CJBig2_Segment *pSegment);
+    int32_t parseGenericRefinementRegion(CJBig2_Segment *pSegment);
 
-    FX_INT32 parseTable(CJBig2_Segment *pSegment);
+    int32_t parseTable(CJBig2_Segment *pSegment);
 
-    FX_INT32 parseRegionInfo(JBig2RegionInfo *pRI);
+    int32_t parseRegionInfo(JBig2RegionInfo *pRI);
 
 
 
@@ -108,11 +111,11 @@ private:
 
     CJBig2_Context *m_pGlobalContext;
 
-    FX_INT32 m_nStreamType;
+    int32_t m_nStreamType;
 
     CJBig2_BitStream *m_pStream;
 
-    FX_INT32 m_nState;
+    int32_t m_nState;
 
     CJBig2_List<CJBig2_Segment> *m_pSegmentList;
 
@@ -122,9 +125,9 @@ private:
 
     FX_BOOL m_bBufSpecified;
 
-    FX_INT32 m_nSegmentDecoded;
+    int32_t m_nSegmentDecoded;
     IFX_Pause* m_pPause;
-    FX_INT32   m_PauseStep;
+    int32_t    m_PauseStep;
     FXCODEC_STATUS m_ProcessiveStatus;
     FX_BOOL    m_bFirstPage;
     CJBig2_ArithDecoder *m_pArithDecoder;