summaryrefslogtreecommitdiff
path: root/enc/shift_jis.c
diff options
context:
space:
mode:
Diffstat (limited to 'enc/shift_jis.c')
-rw-r--r--enc/shift_jis.c3
1 files changed, 3 insertions, 0 deletions
diff --git a/enc/shift_jis.c b/enc/shift_jis.c
index f309dcfd42..e2bcaec189 100644
--- a/enc/shift_jis.c
+++ b/enc/shift_jis.c
@@ -230,6 +230,9 @@ code_to_mbclen(OnigCodePoint code, OnigEncoding enc ARG_UNUSED)
return ONIGERR_INVALID_CODE_POINT_VALUE;
}
else if (code <= 0xffff) {
+ int low = code & 0xff;
+ if (low < 0x40 || low == 0x7f || 0xfc < low)
+ return ONIGERR_INVALID_CODE_POINT_VALUE;
return 2;
}
else