OLD | NEW |
1 // Copyright 2014 PDFium Authors. All rights reserved. | 1 // Copyright 2014 PDFium Authors. All rights reserved. |
2 // Use of this source code is governed by a BSD-style license that can be | 2 // Use of this source code is governed by a BSD-style license that can be |
3 // found in the LICENSE file. | 3 // found in the LICENSE file. |
4 | 4 |
5 // Original code copyright 2014 Foxit Software Inc. http://www.foxitsoftware.com | 5 // Original code copyright 2014 Foxit Software Inc. http://www.foxitsoftware.com |
6 | 6 |
7 #include "JBig2_Object.h" | 7 #include "JBig2_Object.h" |
8 #include "JBig2_Module.h" | 8 #include "JBig2_Module.h" |
9 void *CJBig2_Object::operator new(size_t size, CJBig2_Module *pModule, FX_LPCSTR
filename, int line) | 9 void* CJBig2_Object::operator new(size_t size, |
10 { | 10 CJBig2_Module* pModule, |
11 CJBig2_Object *p; | 11 FX_LPCSTR filename, |
12 p = (CJBig2_Object *)pModule->JBig2_Malloc((FX_DWORD)size); | 12 int line) { |
13 p->m_pModule = pModule; | 13 CJBig2_Object* p; |
14 return p; | 14 p = (CJBig2_Object*)pModule->JBig2_Malloc((FX_DWORD)size); |
| 15 p->m_pModule = pModule; |
| 16 return p; |
15 } | 17 } |
16 void CJBig2_Object::operator delete(void *p, CJBig2_Module *pModule, FX_LPCSTR f
ilename, int line) | 18 void CJBig2_Object::operator delete(void* p, |
17 { | 19 CJBig2_Module* pModule, |
18 pModule->JBig2_Free(p); | 20 FX_LPCSTR filename, |
| 21 int line) { |
| 22 pModule->JBig2_Free(p); |
19 } | 23 } |
20 void *CJBig2_Object::operator new(size_t size, CJBig2_Module *pModule) | 24 void* CJBig2_Object::operator new(size_t size, CJBig2_Module* pModule) { |
21 { | 25 CJBig2_Object* p; |
22 CJBig2_Object *p; | 26 p = (CJBig2_Object*)pModule->JBig2_Malloc((FX_DWORD)size); |
23 p = (CJBig2_Object *)pModule->JBig2_Malloc((FX_DWORD)size); | 27 p->m_pModule = pModule; |
24 p->m_pModule = pModule; | 28 return p; |
25 return p; | |
26 } | 29 } |
27 void CJBig2_Object::operator delete(void *p) | 30 void CJBig2_Object::operator delete(void* p) { |
28 { | 31 ((CJBig2_Object*)p)->m_pModule->JBig2_Free(p); |
29 ((CJBig2_Object *)p)->m_pModule->JBig2_Free(p); | |
30 } | 32 } |
31 void CJBig2_Object::operator delete(void *p, CJBig2_Module *pModule) | 33 void CJBig2_Object::operator delete(void* p, CJBig2_Module* pModule) { |
32 { | 34 pModule->JBig2_Free(p); |
33 pModule->JBig2_Free(p); | |
34 } | 35 } |
35 void *CJBig2_Object::operator new[](size_t size, CJBig2_Module *pModule, size_t
unit_size, | 36 void* CJBig2_Object::operator new [](size_t size, |
36 FX_LPCSTR filename, int line) | 37 CJBig2_Module* pModule, |
37 { | 38 size_t unit_size, |
38 void *p; | 39 FX_LPCSTR filename, |
39 FX_BYTE *pCur, *pEnd; | 40 int line) { |
40 p = (FX_BYTE *)pModule->JBig2_Malloc((FX_DWORD)size); | 41 void* p; |
41 pCur = (FX_BYTE *)p; | 42 FX_BYTE* pCur, *pEnd; |
42 pEnd = pCur + size; | 43 p = (FX_BYTE*)pModule->JBig2_Malloc((FX_DWORD)size); |
43 for(; pCur < pEnd; pCur += unit_size) { | 44 pCur = (FX_BYTE*)p; |
44 ((CJBig2_Object *)pCur)->m_pModule = pModule; | 45 pEnd = pCur + size; |
45 } | 46 for (; pCur < pEnd; pCur += unit_size) { |
46 return p; | 47 ((CJBig2_Object*)pCur)->m_pModule = pModule; |
| 48 } |
| 49 return p; |
| 50 } void CJBig2_Object:: |
| 51 operator delete [](void* p, |
| 52 CJBig2_Module* pModule, |
| 53 size_t unit_size, |
| 54 FX_LPCSTR filename, |
| 55 int line) { pModule->JBig2_Free(p); } void* CJBig2_Object:: |
| 56 operator new [](size_t size, CJBig2_Module* pModule, size_t unit_size) { |
| 57 void* p; |
| 58 FX_BYTE* pCur, *pEnd; |
| 59 p = (FX_BYTE*)pModule->JBig2_Malloc((FX_DWORD)size); |
| 60 pCur = (FX_BYTE*)p; |
| 61 pEnd = pCur + size; |
| 62 for (; pCur < pEnd; pCur += unit_size) { |
| 63 ((CJBig2_Object*)pCur)->m_pModule = pModule; |
| 64 } |
| 65 return p; |
| 66 } void CJBig2_Object:: |
| 67 operator delete [](void* p) { |
| 68 ((CJBig2_Object*)p)->m_pModule->JBig2_Free(p); |
| 69 } void CJBig2_Object:: |
| 70 operator delete [](void* p, CJBig2_Module* pModule, size_t unit_size) { |
| 71 pModule->JBig2_Free(p); |
47 } | 72 } |
48 void CJBig2_Object::operator delete[](void *p, CJBig2_Module *pModule, size_t un
it_size, | |
49 FX_LPCSTR filename, int line) | |
50 { | |
51 pModule->JBig2_Free(p); | |
52 } | |
53 void *CJBig2_Object::operator new[](size_t size, CJBig2_Module *pModule, size_t
unit_size) | |
54 { | |
55 void *p; | |
56 FX_BYTE *pCur, *pEnd; | |
57 p = (FX_BYTE *)pModule->JBig2_Malloc((FX_DWORD)size); | |
58 pCur = (FX_BYTE *)p; | |
59 pEnd = pCur + size; | |
60 for(; pCur < pEnd; pCur += unit_size) { | |
61 ((CJBig2_Object *)pCur)->m_pModule = pModule; | |
62 } | |
63 return p; | |
64 } | |
65 void CJBig2_Object::operator delete[](void* p) | |
66 { | |
67 ((CJBig2_Object *)p)->m_pModule->JBig2_Free(p); | |
68 } | |
69 void CJBig2_Object::operator delete[](void *p, CJBig2_Module *pModule, size_t un
it_size) | |
70 { | |
71 pModule->JBig2_Free(p); | |
72 } | |
OLD | NEW |