Chromium Code Reviews
chromiumcodereview-hr@appspot.gserviceaccount.com (chromiumcodereview-hr) | Please choose your nickname with Settings | Help | Chromium Project | Gerrit Changes | Sign out
(90)

Side by Side Diff: core/src/fxcrt/fx_basic_memmgr.cpp

Issue 1265503005: clang-format all pdfium code. (Closed) Base URL: https://pdfium.googlesource.com/pdfium.git@master
Patch Set: sigh Created 5 years, 4 months ago
Use n/p to move between diff chunks; N/P to move between comments. Draft comments are only viewable by you.
Jump to:
View unified diff | Download patch
OLDNEW
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 <stdlib.h> // For abort(). 7 #include <stdlib.h> // For abort().
8 #include "../../include/fxcrt/fx_memory.h" 8 #include "../../include/fxcrt/fx_memory.h"
9 9
10 void*» FXMEM_DefaultAlloc(size_t byte_size, int flags) 10 void* FXMEM_DefaultAlloc(size_t byte_size, int flags) {
11 { 11 return (void*)malloc(byte_size);
12 return (void*)malloc(byte_size);
13 } 12 }
14 void*» FXMEM_DefaultRealloc(void* pointer, size_t new_size, int flags) 13 void* FXMEM_DefaultRealloc(void* pointer, size_t new_size, int flags) {
15 { 14 return realloc(pointer, new_size);
16 return realloc(pointer, new_size);
17 } 15 }
18 void» FXMEM_DefaultFree(void* pointer, int flags) 16 void FXMEM_DefaultFree(void* pointer, int flags) {
19 { 17 free(pointer);
20 free(pointer);
21 } 18 }
22 19
23 NEVER_INLINE void FX_OutOfMemoryTerminate() { 20 NEVER_INLINE void FX_OutOfMemoryTerminate() {
24 // Termimate cleanly if we can, else crash at a specific address (0xbd). 21 // Termimate cleanly if we can, else crash at a specific address (0xbd).
25 abort(); 22 abort();
26 reinterpret_cast<void(*)()>(0xbd)(); 23 reinterpret_cast<void (*)()>(0xbd)();
27 } 24 }
28 25
29 CFX_GrowOnlyPool::CFX_GrowOnlyPool(size_t trunk_size) 26 CFX_GrowOnlyPool::CFX_GrowOnlyPool(size_t trunk_size) {
30 { 27 m_TrunkSize = trunk_size;
31 m_TrunkSize = trunk_size; 28 m_pFirstTrunk = NULL;
32 m_pFirstTrunk = NULL;
33 } 29 }
34 CFX_GrowOnlyPool::~CFX_GrowOnlyPool() 30 CFX_GrowOnlyPool::~CFX_GrowOnlyPool() {
35 { 31 FreeAll();
36 FreeAll();
37 } 32 }
38 struct _FX_GrowOnlyTrunk { 33 struct _FX_GrowOnlyTrunk {
39 size_t» m_Size; 34 size_t m_Size;
40 size_t» m_Allocated; 35 size_t m_Allocated;
41 _FX_GrowOnlyTrunk*» m_pNext; 36 _FX_GrowOnlyTrunk* m_pNext;
42 }; 37 };
43 void CFX_GrowOnlyPool::FreeAll() 38 void CFX_GrowOnlyPool::FreeAll() {
44 { 39 _FX_GrowOnlyTrunk* pTrunk = (_FX_GrowOnlyTrunk*)m_pFirstTrunk;
45 _FX_GrowOnlyTrunk* pTrunk = (_FX_GrowOnlyTrunk*)m_pFirstTrunk; 40 while (pTrunk) {
46 while (pTrunk) { 41 _FX_GrowOnlyTrunk* pNext = pTrunk->m_pNext;
47 _FX_GrowOnlyTrunk* pNext = pTrunk->m_pNext; 42 FX_Free(pTrunk);
48 FX_Free(pTrunk); 43 pTrunk = pNext;
49 pTrunk = pNext; 44 }
45 m_pFirstTrunk = NULL;
46 }
47 void* CFX_GrowOnlyPool::Alloc(size_t size) {
48 size = (size + 3) / 4 * 4;
49 _FX_GrowOnlyTrunk* pTrunk = (_FX_GrowOnlyTrunk*)m_pFirstTrunk;
50 while (pTrunk) {
51 if (pTrunk->m_Size - pTrunk->m_Allocated >= size) {
52 void* p = (uint8_t*)(pTrunk + 1) + pTrunk->m_Allocated;
53 pTrunk->m_Allocated += size;
54 return p;
50 } 55 }
51 m_pFirstTrunk = NULL; 56 pTrunk = pTrunk->m_pNext;
57 }
58 size_t alloc_size = size > m_TrunkSize ? size : m_TrunkSize;
59 pTrunk = (_FX_GrowOnlyTrunk*)FX_Alloc(uint8_t,
60 sizeof(_FX_GrowOnlyTrunk) + alloc_size);
61 pTrunk->m_Size = alloc_size;
62 pTrunk->m_Allocated = size;
63 pTrunk->m_pNext = (_FX_GrowOnlyTrunk*)m_pFirstTrunk;
64 m_pFirstTrunk = pTrunk;
65 return pTrunk + 1;
52 } 66 }
53 void* CFX_GrowOnlyPool::Alloc(size_t size)
54 {
55 size = (size + 3) / 4 * 4;
56 _FX_GrowOnlyTrunk* pTrunk = (_FX_GrowOnlyTrunk*)m_pFirstTrunk;
57 while (pTrunk) {
58 if (pTrunk->m_Size - pTrunk->m_Allocated >= size) {
59 void* p = (uint8_t*)(pTrunk + 1) + pTrunk->m_Allocated;
60 pTrunk->m_Allocated += size;
61 return p;
62 }
63 pTrunk = pTrunk->m_pNext;
64 }
65 size_t alloc_size = size > m_TrunkSize ? size : m_TrunkSize;
66 pTrunk = (_FX_GrowOnlyTrunk*)FX_Alloc(uint8_t, sizeof(_FX_GrowOnlyTrunk) + a lloc_size);
67 pTrunk->m_Size = alloc_size;
68 pTrunk->m_Allocated = size;
69 pTrunk->m_pNext = (_FX_GrowOnlyTrunk*)m_pFirstTrunk;
70 m_pFirstTrunk = pTrunk;
71 return pTrunk + 1;
72 }
OLDNEW

Powered by Google App Engine
This is Rietveld 408576698