1 // Copyright 2014 PDFium Authors. All rights reserved.
2 // Use of this source code is governed by a BSD-style license that can be
3 // found in the LICENSE file.
4 
5 // Original code copyright 2014 Foxit Software Inc. http://www.foxitsoftware.com
6 
7 #include "core/include/fxcrt/fx_memory.h"
8 #include "plex.h"
9 
Create(CFX_Plex * & pHead,FX_DWORD nMax,FX_DWORD cbElement)10 CFX_Plex* CFX_Plex::Create(CFX_Plex*& pHead,
11                            FX_DWORD nMax,
12                            FX_DWORD cbElement) {
13   CFX_Plex* p =
14       (CFX_Plex*)FX_Alloc(uint8_t, sizeof(CFX_Plex) + nMax * cbElement);
15   p->pNext = pHead;
16   pHead = p;
17   return p;
18 }
FreeDataChain()19 void CFX_Plex::FreeDataChain() {
20   CFX_Plex* p = this;
21   while (p) {
22     CFX_Plex* old = p;
23     p = p->pNext;
24     FX_Free(old);
25   }
26 }
27