+2010-05-03 Bruno Haible <bruno@clisp.org>
+
+ wctob: Fix for weird platforms.
+ * lib/wctob.c (wctob): When wint_t is larger than wchar_t, check the
+ argument value.
+
2010-05-03 Jim Meyering <meyering@redhat.com>
maint.mk: remove obsolete comments
/* Convert wide character to unibyte character.
- Copyright (C) 2008, 2009, 2010 Free Software Foundation, Inc.
+ Copyright (C) 2008, 2010 Free Software Foundation, Inc.
Written by Bruno Haible <bruno@clisp.org>, 2008.
This program is free software: you can redistribute it and/or modify
if (!(MB_CUR_MAX <= sizeof (buf)))
abort ();
- if (wctomb (buf, wc) == 1)
- return (unsigned char) buf[0];
- else
- return EOF;
+ /* Handle the case where WEOF is a value that does not fit in a wchar_t. */
+ if (wc == (wchar_t)wc)
+ if (wctomb (buf, (wchar_t)wc) == 1)
+ return (unsigned char) buf[0];
+ return EOF;
}