summaryrefslogtreecommitdiff
path: root/iconvdata/cp1258.c
diff options
context:
space:
mode:
Diffstat (limited to 'iconvdata/cp1258.c')
-rw-r--r--iconvdata/cp1258.c16
1 files changed, 16 insertions, 0 deletions
diff --git a/iconvdata/cp1258.c b/iconvdata/cp1258.c
index 853ef63531..553d50b443 100644
--- a/iconvdata/cp1258.c
+++ b/iconvdata/cp1258.c
@@ -480,6 +480,22 @@ static const struct
}
#define LOOP_NEED_FLAGS
#define EXTRA_LOOP_DECLS , int *statep
+#define ONEBYTE_BODY \
+ { \
+ uint32_t ch; \
+ \
+ if (c < 0x80) \
+ ch = c; \
+ else \
+ { \
+ ch = to_ucs4[c - 0x80]; \
+ if (ch == L'\0') \
+ return WEOF; \
+ } \
+ if (ch >= 0x0041 && ch <= 0x01b0) \
+ return WEOF; \
+ return ch; \
+ }
#include <iconv/loop.c>