*
* Copyright (c) 2000-2003, PostgreSQL Global Development Group
*
- * $Header: /cvsroot/pgsql/src/bin/psql/mbprint.c,v 1.12 2003/09/12 02:40:09 momjian Exp $
+ * $Header: /cvsroot/pgsql/src/bin/psql/mbprint.c,v 1.12.2.1 2010/08/16 00:07:00 tgl Exp $
*/
#include "postgres_fe.h"
if ((*c & 0x80) == 0)
return (pg_wchar) c[0];
else if ((*c & 0xe0) == 0xc0)
- {
return (pg_wchar) (((c[0] & 0x1f) << 6) |
(c[1] & 0x3f));
- }
else if ((*c & 0xf0) == 0xe0)
- {
return (pg_wchar) (((c[0] & 0x0f) << 12) |
((c[1] & 0x3f) << 6) |
(c[2] & 0x3f));
- }
- else if ((*c & 0xf0) == 0xf0)
- {
+ else if ((*c & 0xf8) == 0xf0)
return (pg_wchar) (((c[0] & 0x07) << 18) |
((c[1] & 0x3f) << 12) |
((c[2] & 0x3f) << 6) |
(c[3] & 0x3f));
- }
else
- {
/* that is an invalid code on purpose */
return 0xffffffff;
- }
}
/* mb_utf_wcwidth : calculate column length for the utf8 string pwcs