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

Side by Side Diff: core/src/fpdfapi/fpdf_font/ttgsubtable.h

Issue 1192743004: Cleanup: Do not check pointers before deleting them. (Closed) Base URL: https://pdfium.googlesource.com/pdfium@master
Patch Set: rebase Created 5 years, 6 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/src/fpdfapi/fpdf_font/fpdf_font_cid.cpp ('k') | core/src/fpdfapi/fpdf_page/fpdf_page.cpp » ('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_SRC_FPDFAPI_FPDF_FONT_TTGSUBTABLE_H_ 7 #ifndef CORE_SRC_FPDFAPI_FPDF_FONT_TTGSUBTABLE_H_
8 #define CORE_SRC_FPDFAPI_FPDF_FONT_TTGSUBTABLE_H_ 8 #define CORE_SRC_FPDFAPI_FPDF_FONT_TTGSUBTABLE_H_
9 9
10 #include "../../../include/fxge/fx_freetype.h" 10 #include "../../../include/fxge/fx_freetype.h"
(...skipping 264 matching lines...) Expand 10 before | Expand all | Expand 10 after
275 }; 275 };
276 struct TSingleSubstFormat1: public TSubTableBase { 276 struct TSingleSubstFormat1: public TSubTableBase {
277 TCoverageFormatBase *Coverage; 277 TCoverageFormatBase *Coverage;
278 TT_int16_t DeltaGlyphID; 278 TT_int16_t DeltaGlyphID;
279 TSingleSubstFormat1(): Coverage(NULL), DeltaGlyphID(0) 279 TSingleSubstFormat1(): Coverage(NULL), DeltaGlyphID(0)
280 { 280 {
281 SubstFormat = 1; 281 SubstFormat = 1;
282 } 282 }
283 ~TSingleSubstFormat1() 283 ~TSingleSubstFormat1()
284 { 284 {
285 if(Coverage) { 285 delete Coverage;
286 delete Coverage;
287 }
288 } 286 }
289 private: 287 private:
290 TSingleSubstFormat1(const TSingleSubstFormat1&); 288 TSingleSubstFormat1(const TSingleSubstFormat1&);
291 TSingleSubstFormat1& operator=(const TSingleSubstFormat1&); 289 TSingleSubstFormat1& operator=(const TSingleSubstFormat1&);
292 }; 290 };
293 struct TSingleSubstFormat2: public TSubTableBase { 291 struct TSingleSubstFormat2: public TSubTableBase {
294 TCoverageFormatBase *Coverage; 292 TCoverageFormatBase *Coverage;
295 TT_uint16_t GlyphCount; 293 TT_uint16_t GlyphCount;
296 TT_uint16_t *Substitute; 294 TT_uint16_t *Substitute;
297 TSingleSubstFormat2(): Coverage(NULL), GlyphCount(0), Substitute(NULL) 295 TSingleSubstFormat2(): Coverage(NULL), GlyphCount(0), Substitute(NULL)
298 { 296 {
299 SubstFormat = 2; 297 SubstFormat = 2;
300 } 298 }
301 ~TSingleSubstFormat2() 299 ~TSingleSubstFormat2()
302 { 300 {
303 if(Coverage) { 301 delete Coverage;
304 delete Coverage; 302 delete[] Substitute;
305 }
306 if(Substitute) {
307 delete[] Substitute;
308 }
309 } 303 }
310 private: 304 private:
311 TSingleSubstFormat2(const TSingleSubstFormat2&); 305 TSingleSubstFormat2(const TSingleSubstFormat2&);
312 TSingleSubstFormat2& operator=(const TSingleSubstFormat2&); 306 TSingleSubstFormat2& operator=(const TSingleSubstFormat2&);
313 }; 307 };
314 struct TLookup { 308 struct TLookup {
315 TT_uint16_t LookupType; 309 TT_uint16_t LookupType;
316 TT_uint16_t LookupFlag; 310 TT_uint16_t LookupFlag;
317 TT_uint16_t SubTableCount; 311 TT_uint16_t SubTableCount;
318 struct TSubTableBase **SubTable; 312 struct TSubTableBase **SubTable;
(...skipping 92 matching lines...) Expand 10 before | Expand all | Expand 10 after
411 class CFX_GSUBTable final : public IFX_GSUBTable 405 class CFX_GSUBTable final : public IFX_GSUBTable
412 { 406 {
413 public: 407 public:
414 ~CFX_GSUBTable() override {} 408 ~CFX_GSUBTable() override {}
415 virtual FX_BOOL GetVerticalGlyph(FX_DWORD glyphnum, FX_DWORD* vglyphnum) ove rride; 409 virtual FX_BOOL GetVerticalGlyph(FX_DWORD glyphnum, FX_DWORD* vglyphnum) ove rride;
416 410
417 CFX_CTTGSUBTable m_GsubImp; 411 CFX_CTTGSUBTable m_GsubImp;
418 }; 412 };
419 413
420 #endif // CORE_SRC_FPDFAPI_FPDF_FONT_TTGSUBTABLE_H_ 414 #endif // CORE_SRC_FPDFAPI_FPDF_FONT_TTGSUBTABLE_H_
OLDNEW
« no previous file with comments | « core/src/fpdfapi/fpdf_font/fpdf_font_cid.cpp ('k') | core/src/fpdfapi/fpdf_page/fpdf_page.cpp » ('j') | no next file with comments »

Powered by Google App Engine
This is Rietveld 408576698