···
FYI,
I didn't know that the font was corrupt. I have over 400 fonts on my machine, and had to reload to pick up the new ones. You'll find that having a large number of fonts will start to become a common situation as more fonts become public (e.g., Google's Free Web Fonts project). This increases the chances that some of those fonts will be corrupt.
It is a low priority, but a corrupt font should not cause a program to hang or crash. The software should exit gracefully, and perhaps strongly suggest to standard error that the user investigate that particular font file.
+1
For my particular application, eventually I will allow users to upload custom fonts. If they upload a font that is corrupt (accidentally or intentionally), a run-away process would make for a rainy day.
That’s a serious problem with Luatex. The fontforge libraries used to import font data simply hang with various corrupt fonts. So far the only viable workaround is to manually create a blacklist of bad fonts. E.g. this is the current list for Luaotfload: https://github.com/lualatex/luaotfload/blob/master/luaotfload-blacklist.cnf (Copperplate is going to be added soon.) Unfortunately, Context does not yet have blacklisting functionality (it’s marked as todo in the source) so you’re going to have to filter out bad files from your font directories by hand. Regards, Philipp