1 // Copyright 2016 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/fxge/ge/cttfontdesc.h" 8 9 #include "core/fxge/fx_freetype.h" 10 ~CTTFontDesc()11CTTFontDesc::~CTTFontDesc() { 12 if (m_Type == 1) { 13 if (m_SingleFace) 14 FXFT_Done_Face(m_SingleFace); 15 } else if (m_Type == 2) { 16 for (int i = 0; i < 16; i++) { 17 if (m_TTCFaces[i]) 18 FXFT_Done_Face(m_TTCFaces[i]); 19 } 20 } 21 FX_Free(m_pFontData); 22 } 23 ReleaseFace(FXFT_Face face)24int CTTFontDesc::ReleaseFace(FXFT_Face face) { 25 if (m_Type == 1) { 26 if (m_SingleFace != face) 27 return -1; 28 } else if (m_Type == 2) { 29 int i; 30 for (i = 0; i < 16; i++) { 31 if (m_TTCFaces[i] == face) 32 break; 33 } 34 if (i == 16) 35 return -1; 36 } 37 m_RefCount--; 38 if (m_RefCount) 39 return m_RefCount; 40 delete this; 41 return 0; 42 } 43