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

Side by Side Diff: core/fxge/include/fx_font.h

Issue 2322043002: Fix memory management errors for font loading and copying (Closed)
Patch Set: address comments Created 4 years, 3 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
« no previous file with comments | « core/fxge/ge/cfx_font.cpp ('k') | xfa/fgas/font/fgas_gefont.h » ('j') | no next file with comments »
Toggle Intra-line Diffs ('i') | Expand Comments ('e') | Collapse Comments ('c') | Show Comments Hide Comments ('s')
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 #ifndef CORE_FXGE_INCLUDE_FX_FONT_H_ 7 #ifndef CORE_FXGE_INCLUDE_FX_FONT_H_
8 #define CORE_FXGE_INCLUDE_FX_FONT_H_ 8 #define CORE_FXGE_INCLUDE_FX_FONT_H_
9 9
10 #include <memory> 10 #include <memory>
(...skipping 133 matching lines...) Expand 10 before | Expand all | Expand 10 after
144 static const size_t kAngleSkewArraySize = 30; 144 static const size_t kAngleSkewArraySize = 30;
145 static const char s_AngleSkew[kAngleSkewArraySize]; 145 static const char s_AngleSkew[kAngleSkewArraySize];
146 static const size_t kWeightPowArraySize = 100; 146 static const size_t kWeightPowArraySize = 100;
147 static const uint8_t s_WeightPow[kWeightPowArraySize]; 147 static const uint8_t s_WeightPow[kWeightPowArraySize];
148 static const uint8_t s_WeightPow_11[kWeightPowArraySize]; 148 static const uint8_t s_WeightPow_11[kWeightPowArraySize];
149 static const uint8_t s_WeightPow_SHIFTJIS[kWeightPowArraySize]; 149 static const uint8_t s_WeightPow_SHIFTJIS[kWeightPowArraySize];
150 150
151 #ifdef PDF_ENABLE_XFA 151 #ifdef PDF_ENABLE_XFA
152 protected: 152 protected:
153 CFX_BinaryBuf m_OtfFontData; 153 CFX_BinaryBuf m_OtfFontData;
154 FX_BOOL m_bLogic; 154 bool m_bShallowCopy;
155 void* m_pOwnedStream; 155 FXFT_StreamRec* m_pOwnedStream;
156 #endif // PDF_ENABLE_XFA 156 #endif // PDF_ENABLE_XFA
157 157
158 private: 158 private:
159 void ReleasePlatformResource(); 159 void ReleasePlatformResource();
160 void DeleteFace(); 160 void DeleteFace();
161 161
162 FXFT_Face m_Face; 162 FXFT_Face m_Face;
163 std::unique_ptr<CFX_SubstFont> m_pSubstFont; 163 std::unique_ptr<CFX_SubstFont> m_pSubstFont;
164 std::vector<uint8_t> m_pFontDataAllocation; 164 std::vector<uint8_t> m_pFontDataAllocation;
165 uint8_t* m_pFontData; 165 uint8_t* m_pFontData;
(...skipping 49 matching lines...) Expand 10 before | Expand all | Expand 10 after
215 FX_FLOAT retinaScaleX = 1.0f, 215 FX_FLOAT retinaScaleX = 1.0f,
216 FX_FLOAT retinaScaleY = 1.0f); 216 FX_FLOAT retinaScaleY = 1.0f);
217 217
218 CFX_ByteString GetNameFromTT(const uint8_t* name_table, 218 CFX_ByteString GetNameFromTT(const uint8_t* name_table,
219 uint32_t name_table_size, 219 uint32_t name_table_size,
220 uint32_t name); 220 uint32_t name);
221 221
222 int PDF_GetStandardFontName(CFX_ByteString* name); 222 int PDF_GetStandardFontName(CFX_ByteString* name);
223 223
224 #endif // CORE_FXGE_INCLUDE_FX_FONT_H_ 224 #endif // CORE_FXGE_INCLUDE_FX_FONT_H_
OLDNEW
« no previous file with comments | « core/fxge/ge/cfx_font.cpp ('k') | xfa/fgas/font/fgas_gefont.h » ('j') | no next file with comments »

Powered by Google App Engine
This is Rietveld 408576698