aboutsummaryrefslogtreecommitdiffstats
path: root/debian/patches/190_codepage.patch
diff options
context:
space:
mode:
Diffstat (limited to 'debian/patches/190_codepage.patch')
-rw-r--r--debian/patches/190_codepage.patch196
1 files changed, 0 insertions, 196 deletions
diff --git a/debian/patches/190_codepage.patch b/debian/patches/190_codepage.patch
deleted file mode 100644
index 8e30d05..0000000
--- a/debian/patches/190_codepage.patch
+++ /dev/null
@@ -1,196 +0,0 @@
-Description: Handling of codepage with wc_codepage
- * [w3m-dev 04279] charset
- * libwc/ces.h, libwc/charset.c: set charset to Shift_JIS, when locale
- is japanese, jp_JP.PCK, ja_JP.IBM-932, ja_JP.IBM-943, or windows-31j.
-Origin: upstream, http://w3m.cvs.sourceforge.net/viewvc/w3m/w3m/
-Author: Hironori Sakamoto <hsaka@mth.biglobe.ne.jp>
-
-diff -urN w3m-0.5.2.orig/libwc/ces.h w3m/libwc/ces.h
---- w3m-0.5.2.orig/libwc/ces.h 2003-09-23 06:02:23.000000000 +0900
-+++ w3m/libwc/ces.h 2007-06-07 19:59:52.000000000 +0900
-@@ -176,6 +176,7 @@
-
- #define WC_CES_SHIFT_JIS (WC_CES_E_PRIV2|WC_CES_N_SHIFT_JIS)
- #define WC_CES_CP932 WC_CES_SHIFT_JIS
-+#define WC_CES_CP943 WC_CES_SHIFT_JIS
- #define WC_CES_SHIFT_JISX0213 (WC_CES_E_PRIV2|WC_CES_N_SHIFT_JISX0213)
- #define WC_CES_GBK (WC_CES_E_PRIV2|WC_CES_N_GBK)
- #define WC_CES_CP936 WC_CES_GBK
-diff -urN w3m-0.5.2.orig/libwc/charset.c w3m/libwc/charset.c
---- w3m-0.5.2.orig/libwc/charset.c 2007-05-23 21:34:20.000000000 +0900
-+++ w3m/libwc/charset.c 2007-06-07 19:59:52.000000000 +0900
-@@ -32,6 +32,46 @@
- { NULL, 0 }
- };
-
-+static wc_ces
-+wc_codepage(int n)
-+{
-+ switch (n) {
-+ case 437: return WC_CES_CP437;
-+ case 737: return WC_CES_CP737;
-+ case 775: return WC_CES_CP775;
-+ case 850: return WC_CES_CP850;
-+ case 852: return WC_CES_CP852;
-+ case 855: return WC_CES_CP855;
-+ case 856: return WC_CES_CP856;
-+ case 857: return WC_CES_CP857;
-+ case 860: return WC_CES_CP860;
-+ case 861: return WC_CES_CP861;
-+ case 862: return WC_CES_CP862;
-+ case 863: return WC_CES_CP863;
-+ case 864: return WC_CES_CP864;
-+ case 865: return WC_CES_CP865;
-+ case 866: return WC_CES_CP866;
-+ case 869: return WC_CES_CP869;
-+ case 874: return WC_CES_CP874;
-+ case 932: return WC_CES_CP932; /* CP932 = Shift_JIS */
-+ case 936: return WC_CES_CP936; /* CP936 = GBK > EUC_CN */
-+ case 943: return WC_CES_CP943; /* CP943 = Shift_JIS */
-+ case 949: return WC_CES_CP949; /* CP949 = UHC > EUC_KR */
-+ case 950: return WC_CES_CP950; /* CP950 = Big5 */
-+ case 1006: return WC_CES_CP1006;
-+ case 1250: return WC_CES_CP1250;
-+ case 1251: return WC_CES_CP1251;
-+ case 1252: return WC_CES_CP1252;
-+ case 1253: return WC_CES_CP1253;
-+ case 1254: return WC_CES_CP1254;
-+ case 1255: return WC_CES_CP1255;
-+ case 1256: return WC_CES_CP1256;
-+ case 1257: return WC_CES_CP1257;
-+ case 1258: return WC_CES_CP1258;
-+ }
-+ return 0;
-+}
-+
- wc_ces
- wc_guess_charset(char *charset, wc_ces orig)
- {
-@@ -119,6 +159,11 @@
- if (n >= 1 && n <= 16 && n != 12)
- return (WC_CES_E_ISO_8859 | n);
- return WC_CES_ISO_8859_1;
-+ } else if (! strncmp(p, "ibm", 3)) {
-+ p += 3;
-+ if (*p >= '1' && *p <= '9')
-+ return wc_codepage(atoi(p));
-+ return wc_charset_to_ces(p);
- }
- break;
- case 'j':
-@@ -135,6 +180,10 @@
- ! strncmp(p, "sjis", 4))
- return WC_CES_SHIFT_JIS;
- break;
-+ case 'p':
-+ if (! strncmp(p, "pck", 3))
-+ return WC_CES_SHIFT_JIS;
-+ break;
- case 'g':
- if (! strncmp(p, "gb18030", 7) ||
- ! strncmp(p, "gbk2k", 5))
-@@ -210,58 +259,18 @@
- return WC_CES_EUC_CN;
- if (*(p+1) != 'p')
- break;
-- n = atoi(p + 2);
-- switch (n) {
-- case 437: return WC_CES_CP437;
-- case 737: return WC_CES_CP737;
-- case 775: return WC_CES_CP775;
-- case 850: return WC_CES_CP850;
-- case 852: return WC_CES_CP852;
-- case 855: return WC_CES_CP855;
-- case 856: return WC_CES_CP856;
-- case 857: return WC_CES_CP857;
-- case 860: return WC_CES_CP860;
-- case 861: return WC_CES_CP861;
-- case 862: return WC_CES_CP862;
-- case 863: return WC_CES_CP863;
-- case 864: return WC_CES_CP864;
-- case 865: return WC_CES_CP865;
-- case 866: return WC_CES_CP866;
-- case 869: return WC_CES_CP869;
-- case 874: return WC_CES_CP874;
-- case 932: return WC_CES_CP932; /* CP932 = Shift_JIS */
-- case 936: return WC_CES_CP936; /* CP936 = GBK > EUC_CN */
-- case 949: return WC_CES_CP949; /* CP949 = UHC > EUC_KR */
-- case 950: return WC_CES_CP950; /* CP950 = Big5 */
-- case 1006: return WC_CES_CP1006;
-- case 1250: return WC_CES_CP1250;
-- case 1251: return WC_CES_CP1251;
-- case 1252: return WC_CES_CP1252;
-- case 1253: return WC_CES_CP1253;
-- case 1254: return WC_CES_CP1254;
-- case 1255: return WC_CES_CP1255;
-- case 1256: return WC_CES_CP1256;
-- case 1257: return WC_CES_CP1257;
-- case 1258: return WC_CES_CP1258;
-- }
-+ p += 2;
-+ if (*p >= '1' && *p <= '9')
-+ return wc_codepage(atoi(p));
- break;
- case 'w':
- if (strncmp(p, "windows", 7))
- break;
-+ p += 7;
- if (! strncmp(p, "31j", 3))
- return WC_CES_CP932;
-- n = atoi(p + 7);
-- switch (n) {
-- case 1250: return WC_CES_CP1250;
-- case 1251: return WC_CES_CP1251;
-- case 1252: return WC_CES_CP1252;
-- case 1253: return WC_CES_CP1253;
-- case 1254: return WC_CES_CP1254;
-- case 1255: return WC_CES_CP1255;
-- case 1256: return WC_CES_CP1256;
-- case 1257: return WC_CES_CP1257;
-- case 1258: return WC_CES_CP1258;
-- }
-+ if (*p >= '1' && *p <= '9')
-+ return wc_codepage(atoi(p));
- break;
- }
- return 0;
-@@ -345,18 +354,9 @@
- case 'c':
- return WC_CES_ISO_2022_CN;
- case 'w':
-- n = atoi(p + 1);
-- switch (n) {
-- case 1250: return WC_CES_CP1250;
-- case 1251: return WC_CES_CP1251;
-- case 1252: return WC_CES_CP1252;
-- case 1253: return WC_CES_CP1253;
-- case 1254: return WC_CES_CP1254;
-- case 1255: return WC_CES_CP1255;
-- case 1256: return WC_CES_CP1256;
-- case 1257: return WC_CES_CP1257;
-- case 1258: return WC_CES_CP1258;
-- }
-+ p++;
-+ if (*p >= '1' && *p <= '9')
-+ return wc_codepage(atoi(p));
- break;
- case 'r':
- return WC_CES_RAW;
-@@ -368,7 +368,7 @@
- wc_locale_to_ces(char *locale)
- {
- char *p = locale;
-- char buf[6];
-+ char buf[8];
- int n;
-
- if (*p == 'C' && *(p+1) == '\0')
-@@ -380,7 +380,7 @@
- return wc_charset_to_ces(cs);
- }
- #endif
-- for (n = 0; *p && *p != '.' && n < 5; p++) {
-+ for (n = 0; *p && *p != '.' && n < 7; p++) {
- if ((unsigned char)*p > 0x20)
- buf[n++] = tolower(*p);
- }