Freetype failure / exit crashes the core

Bug #178880 reported by Charles Goodwin
2
Affects Status Importance Assigned to Milestone
Vexi
Confirmed
High
Unassigned

Bug Description

If the core encounters a freetype problem, it hangs the core. Perhaps there needs to be some kind of recovery process (mark the font as bad and restart freetype?) or, worst case, exit gracefully.

When attempting to render a font that our inbuilt freetype binary does not like, this error gets thrown:

FT_Render_Glyph(face->glyph, FT_RENDER_MODE_NORMAL) failed

Then returning to a normal font throws this:

Exception in thread "main" java.lang.Error: Freetype exited 1
 at org.vexi.graphics.Font.rtCheck(Font.java:144)
 at org.vexi.graphics.Font.loadFontByteStream(Font.java:168)
 at org.vexi.graphics.Font.renderGlyph(Font.java:175)
 at org.vexi.graphics.Font.access$1(Font.java:172)
 at org.vexi.graphics.Font$Glyph.render(Font.java:51)
 at org.vexi.graphics.Font.rasterizeGlyphs(Font.java:96)
 at org.vexi.graphics.Font.textsize(Font.java:107)
 at org.vexi.graphics.Font.textwidth(Font.java:105)
 at org.vexi.core.Text.calculateDimensions(Text.java:113)
 at org.vexi.core.Text.setStream(Text.java:96)
 at org.vexi.core.Box.put(Box.java:1217)
 at org.ibex.js.Interpreter.run(Interpreter.java:303)
 at org.ibex.js.Interpreter.run(Interpreter.java:68)
 at org.ibex.js.Thread$Faction.runAfterPut(Thread.java:102)
 at org.ibex.js.JS$Obj.justTriggerTraps(JS.java:237)
 at org.vexi.core.Box.propagateEvent(Box.java:1032)
 at org.vexi.core.Box.propagateEvent(Box.java:1026)
 at org.vexi.core.Box.propagateEvent(Box.java:1026)
 at org.vexi.core.Box.propagateEvent(Box.java:1018)
 at org.vexi.core.Box.propagateEvent(Box.java:1026)
 at org.vexi.core.Box.propagateEvent(Box.java:1026)
 at org.vexi.core.Box.propagateEvent(Box.java:1026)
 at org.vexi.core.Box.propagateEvent(Box.java:1026)
 at org.vexi.core.Box.propagateEvent(Box.java:1026)
 at org.vexi.core.Box.propagateEvent(Box.java:1026)
 at org.vexi.core.Box.propagateEvent(Box.java:1018)
 at org.vexi.core.Box.propagateEvent(Box.java:1026)
 at org.vexi.core.Box.tryPropagateEvent(Box.java:1001)
 at org.vexi.core.Surface$Message.run(Surface.java:485)
 at org.ibex.js.Scheduler.defaultRun(Scheduler.java:81)
 at org.ibex.js.Scheduler.run(Scheduler.java:59)
 at org.ibex.js.Scheduler.init(Scheduler.java:39)
 at org.vexi.core.Main.start(Main.java:197)
 at org.vexi.core.Main.main(Main.java:86)

Changed in vexi:
importance: Undecided → High
milestone: none → 3.0-future
status: New → Confirmed
To post a comment you must log in.
This report contains Public information  
Everyone can see this information.

Other bug subscribers

Remote bug watches

Bug watches keep track of this bug in other bug trackers.