summaryrefslogtreecommitdiff
path: root/ext/mbstring/libmbfl/filters/mbfilter_sjis_open.c
diff options
context:
space:
mode:
Diffstat (limited to 'ext/mbstring/libmbfl/filters/mbfilter_sjis_open.c')
-rw-r--r--ext/mbstring/libmbfl/filters/mbfilter_sjis_open.c43
1 files changed, 3 insertions, 40 deletions
diff --git a/ext/mbstring/libmbfl/filters/mbfilter_sjis_open.c b/ext/mbstring/libmbfl/filters/mbfilter_sjis_open.c
index 2535036e23..df7ba62e77 100644
--- a/ext/mbstring/libmbfl/filters/mbfilter_sjis_open.c
+++ b/ext/mbstring/libmbfl/filters/mbfilter_sjis_open.c
@@ -33,8 +33,6 @@
#include "unicode_table_cp932_ext.h"
#include "unicode_table_jis.h"
-static int mbfl_filt_ident_sjis_open(int c, mbfl_identify_filter *filter);
-
static const unsigned char mblen_table_sjis[] = { /* 0x80-0x9f,0xE0-0xFF */
1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1,
1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1,
@@ -60,19 +58,13 @@ const mbfl_encoding mbfl_encoding_sjis_open = {
mbfl_no_encoding_sjis_open,
"SJIS-win",
"Shift_JIS",
- (const char *(*)[])&mbfl_encoding_sjis_open_aliases,
+ mbfl_encoding_sjis_open_aliases,
mblen_table_sjis,
- MBFL_ENCTYPE_MBCS | MBFL_ENCTYPE_GL_UNSAFE,
+ MBFL_ENCTYPE_GL_UNSAFE,
&vtbl_sjis_open_wchar,
&vtbl_wchar_sjis_open
};
-const struct mbfl_identify_vtbl vtbl_identify_sjis_open = {
- mbfl_no_encoding_sjis_open,
- mbfl_filt_ident_common_ctor,
- mbfl_filt_ident_sjis_open
-};
-
const struct mbfl_convert_vtbl vtbl_sjis_open_wchar = {
mbfl_no_encoding_sjis_open,
mbfl_no_encoding_wchar,
@@ -249,16 +241,7 @@ mbfl_filt_conv_wchar_sjis_open(int c, mbfl_convert_filter *filter)
s2 = 1;
}
if (s1 <= 0) {
- c1 = c & ~MBFL_WCSPLANE_MASK;
- if (c1 == MBFL_WCSPLANE_WINCP932) {
- s1 = c & MBFL_WCSPLANE_MASK;
- s2 = 1;
- } else if (c1 == MBFL_WCSPLANE_JIS0208) {
- s1 = c & MBFL_WCSPLANE_MASK;
- } else if (c1 == MBFL_WCSPLANE_JIS0212) {
- s1 = c & MBFL_WCSPLANE_MASK;
- s1 |= 0x8080;
- } else if (c == 0xa5) { /* YEN SIGN */
+ if (c == 0xa5) { /* YEN SIGN */
s1 = 0x216f; /* FULLWIDTH YEN SIGN */
} else if (c == 0x203e) { /* OVER LINE */
s1 = 0x2131; /* FULLWIDTH MACRON */
@@ -323,23 +306,3 @@ mbfl_filt_conv_wchar_sjis_open(int c, mbfl_convert_filter *filter)
return c;
}
-
-static int mbfl_filt_ident_sjis_open(int c, mbfl_identify_filter *filter)
-{
- if (filter->status) { /* kanji second char */
- if (c < 0x40 || c > 0xfc || c == 0x7f) { /* bad */
- filter->flag = 1;
- }
- filter->status = 0;
- } else if (c >= 0 && c < 0x80) { /* latin ok */
- ;
- } else if (c > 0xa0 && c < 0xe0) { /* kana ok */
- ;
- } else if (c > 0x80 && c < 0xfd && c != 0xa0) { /* kanji first char */
- filter->status = 1;
- } else { /* bad */
- filter->flag = 1;
- }
-
- return c;
-}