[skin] Missing fonts cause UI crash loop

Issue #536 resolved
prl created an issue

If a font appears in a skin <font/> element, but is not installed in the firmware in one of the standard search locations, the firmware crashes.

The crash occurs because the font replacement code that substitutes for missing fonts is never reached because the code tries to load a non-existent font, which causes a fatal error.

Replication steps

Find a font name in the current skin, and rename its font file to another name, like font.ttf.bak.

Restart the GUI. Crash loop on restart.

Comments (2)

  1. Peter Urbanec

    Fix bug #536: [skin] Missing fonts cause UI crash loop

    Only load skin fonts if the font name resolves to a file that exists. This allows font substitution to be done and the UI to fail more gracefully.

    → <<cset e2e9be600365>>

  2. Log in to comment