freetype-commit
[Top][All Lists]
Advanced

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

[freetype2-demos] gsoc-2022-chariri-3 6f5ac85 10/36: * src/ftinspect/eng


From: Werner Lemberg
Subject: [freetype2-demos] gsoc-2022-chariri-3 6f5ac85 10/36: * src/ftinspect/engine/engine.cpp: Fix segfault on Linux.
Date: Wed, 27 Jul 2022 06:32:44 -0400 (EDT)

branch: gsoc-2022-chariri-3
commit 6f5ac858b1a7afa084eeff317acbfbb36b313f7f
Author: Charlie Jiang <w@chariri.moe>
Commit: Charlie Jiang <w@chariri.moe>

    * src/ftinspect/engine/engine.cpp: Fix segfault on Linux.
    
    Honestly I have no idea how this should have been able to run on Windows.
---
 src/ftinspect/engine/engine.cpp | 8 +++++++-
 1 file changed, 7 insertions(+), 1 deletion(-)

diff --git a/src/ftinspect/engine/engine.cpp b/src/ftinspect/engine/engine.cpp
index 4d296ae..f51af03 100644
--- a/src/ftinspect/engine/engine.cpp
+++ b/src/ftinspect/engine/engine.cpp
@@ -384,7 +384,10 @@ Engine::glyphName(int index)
   if (index < 0)
     throw std::runtime_error("Invalid glyph index");
 
-   if (!FTC_Manager_LookupSize(cacheManager_, &scaler_, &ftSize_))
+  if (!ftSize_)
+    return "";
+
+  if (!FTC_Manager_LookupSize(cacheManager_, &scaler_, &ftSize_))
     return name;
 
   if (ftSize_ && FT_HAS_GLYPH_NAMES(ftSize_->face))
@@ -409,6 +412,9 @@ Engine::loadGlyph(int glyphIndex)
   if (glyphIndex < 0)
     throw std::runtime_error("Invalid glyph index");
 
+  if (curNumGlyphs_ <= 0)
+    return NULL;
+
   FT_Glyph glyph;
 
   // the `scaler' object is set up by the



reply via email to

[Prev in Thread] Current Thread [Next in Thread]