summaryrefslogtreecommitdiff
path: root/error.c
diff options
context:
space:
mode:
authorSimon Tatham <anakin@pobox.com>2004-06-27 13:18:32 +0000
committerSimon Tatham <anakin@pobox.com>2004-06-27 13:18:32 +0000
commitd87fabeacea32abba73d67f991f9e523991369c7 (patch)
tree2107cd344ecdf683140efcf9503a23677f55141c /error.c
parent037337dcc8cc4e7f2f8a628ab73b1b461dae7171 (diff)
downloadhalibut-d87fabeacea32abba73d67f991f9e523991369c7.zip
halibut-d87fabeacea32abba73d67f991f9e523991369c7.tar.gz
halibut-d87fabeacea32abba73d67f991f9e523991369c7.tar.bz2
halibut-d87fabeacea32abba73d67f991f9e523991369c7.tar.xz
Sort out error handling everywhere a charset name is converted into
an integer charset ID. [originally from svn r4317]
Diffstat (limited to 'error.c')
-rw-r--r--error.c8
1 files changed, 8 insertions, 0 deletions
diff --git a/error.c b/error.c
index 0330e76..7b9ceaa 100644
--- a/error.c
+++ b/error.c
@@ -257,6 +257,14 @@ static void do_error(int code, va_list ap) {
sfree(sp);
flags = FILEPOS;
break;
+ case err_charset:
+ fpos = *va_arg(ap, filepos *);
+ wsp = va_arg(ap, wchar_t *);
+ sp = utoa_locale_dup(wsp);
+ sprintf(error, "character set `%.200s' not recognised", sp);
+ flags = FILEPOS;
+ sfree(sp);
+ break;
case err_whatever:
sp = va_arg(ap, char *);
vsprintf(error, sp, ap);