diff options
| author | Ben Harris <bjh21@bjh21.me.uk> | 2007-02-11 15:19:10 +0000 |
|---|---|---|
| committer | Ben Harris <bjh21@bjh21.me.uk> | 2007-02-11 15:19:10 +0000 |
| commit | 6c660b39aeae18c4652a48318bff3373bb535d92 (patch) | |
| tree | 98d595434cdd91184f7504258443f29f898870be /error.c | |
| parent | 6e50bd3a744e0f1ca596636aa0c096de18ffc355 (diff) | |
| download | halibut-6c660b39aeae18c4652a48318bff3373bb535d92.zip halibut-6c660b39aeae18c4652a48318bff3373bb535d92.tar.gz halibut-6c660b39aeae18c4652a48318bff3373bb535d92.tar.bz2 halibut-6c660b39aeae18c4652a48318bff3373bb535d92.tar.xz | |
Improved error handling in sfnt support. No more calls to abort()!
[originally from svn r7269]
Diffstat (limited to 'error.c')
| -rw-r--r-- | error.c | 33 |
1 files changed, 33 insertions, 0 deletions
@@ -341,6 +341,39 @@ static void do_error(int code, va_list ap) { "html-mshtmlhelp-hhp found"); flags = PREFIX; break; + case err_sfntnotable: + fpos = *va_arg(ap, filepos *); + sp = va_arg(ap, char *); + sprintf(error, "font has no '%.4s' table", sp); + flags = FILEPOS; + break; + case err_sfntnopsname: + fpos = *va_arg(ap, filepos *); + sprintf(error, "font has no PostScript name"); + flags = FILEPOS; + break; + case err_sfntbadtable: + fpos = *va_arg(ap, filepos *); + sp = va_arg(ap, char *); + sprintf(error, "font has an invalid '%.4s' table", sp); + flags = FILEPOS; + break; + case err_sfntnounicmap: + fpos = *va_arg(ap, filepos *); + sprintf(error, "font has no UCS-2 character map"); + flags = FILEPOS; + break; + case err_sfnttablevers: + fpos = *va_arg(ap, filepos *); + sp = va_arg(ap, char *); + sprintf(error, "font has an unsupported '%.4s' table version", sp); + flags = FILEPOS; + break; + case err_sfntbadhdr: + fpos = *va_arg(ap, filepos *); + sprintf(error, "font has an invalid header"); + flags = FILEPOS; + break; case err_whatever: sp = va_arg(ap, char *); vsprintf(error, sp, ap); |