diff options
Diffstat (limited to 'iconvdata/cp1255.c')
-rw-r--r-- | iconvdata/cp1255.c | 9 |
1 files changed, 9 insertions, 0 deletions
diff --git a/iconvdata/cp1255.c b/iconvdata/cp1255.c index 19edb27..6cccf52 100644 --- a/iconvdata/cp1255.c +++ b/iconvdata/cp1255.c @@ -321,6 +321,15 @@ static const struct { unsigned int idx; unsigned int len; } comp_table[8] = { } #define LOOP_NEED_FLAGS #define EXTRA_LOOP_DECLS , int *statep +#define ONEBYTE_BODY \ + { \ + if (c < 0x80) \ + return c; \ + uint32_t ch = to_ucs4[c - 0x80]; \ + if (ch == L'\0' || (ch >= 0x05d0 && ch <= 0x05f2)) \ + return WEOF; \ + return ch; \ + } #include <iconv/loop.c> |