Date: Wed, 15 Apr 2009 12:01:49 +0900 (JST) From: Tsurutani Naoki <turutani@scphys.kyoto-u.ac.jp> To: FreeBSD-gnats-submit@FreeBSD.org Cc: turutani@scphys.kyoto-u.ac.jp Subject: ports/133738: fix some bugs in japanese/nkf Message-ID: <200904150301.n3F31n62082706@h120.65.226.10.32118.vlan.kuins.net> Resent-Message-ID: <200904150310.n3F3A2vH065668@freefall.freebsd.org>
next in thread | raw e-mail | index | archive | help
>Number: 133738 >Category: ports >Synopsis: fix some bugs in japanese/nkf >Confidential: no >Severity: serious >Priority: medium >Responsible: freebsd-ports-bugs >State: open >Quarter: >Keywords: >Date-Required: >Class: sw-bug >Submitter-Id: current-users >Arrival-Date: Wed Apr 15 03:10:01 UTC 2009 >Closed-Date: >Last-Modified: >Originator: Tsurutani Naoki >Release: FreeBSD 7.1-STABLE i386 >Organization: >Environment: System: FreeBSD h120.65.226.10.32118.vlan.kuins.net 7.1-STABLE FreeBSD 7.1-STABLE #17: Wed Jan 7 11:14:01 JST 2009 turutani@h120.65.226.10.32118.vlan.kuins.net:/usr/local/work/usr/obj/usr/src/sys/POLYMER i386 >Description: japanese/nkf and japanese/p5-nkf contains some bugs arround UTF-16 etc. >How-To-Repeat: >Fix: some fixes are already incorporated into original git tree. here is a patch, which should be saved as japanese/nkf/files/patch-209fix: diff -urBbN nkf-2.0.9/nkf.c nkf.cur/nkf.c --- ./nkf.c.orig 2009-01-20 18:49:31.000000000 +0900 +++ ./nkf.c 2009-02-21 15:51:20.000000000 +0900 @@ -21,7 +21,7 @@ * 3. This notice may not be removed or altered from any source distribution. */ #define NKF_VERSION "2.0.9" -#define NKF_RELEASE_DATE "2009-01-20" +#define NKF_RELEASE_DATE "2009-02-21" #define COPY_RIGHT \ "Copyright (C) 1987, FUJITSU LTD. (I.Ichikawa).\n" \ "Copyright (C) 1996-2009, The nkf Project." @@ -468,6 +468,8 @@ {"Shift_JIS", 0, 0, 0, {0, 0, 0}, s_status, s_iconv, 0}, #ifdef UTF8_INPUT_ENABLE {"UTF-8", 0, 0, 0, {0, 0, 0}, w_status, w_iconv, 0}, + {"UTF-16", 0, 0, 0, {0, 0, 0}, NULL, w_iconv16, 0}, + {"UTF-32", 0, 0, 0, {0, 0, 0}, NULL, w_iconv32, 0}, #endif {0} }; @@ -1426,6 +1428,7 @@ output_endian = ENDIAN_LITTLE; output_bom_f = TRUE; break; + case UTF_32: case UTF_32BE_BOM: output_bom_f = TRUE; break; @@ -6159,9 +6162,6 @@ output_endian = ENDIAN_LITTLE; } else if (cp[0] == 'B') { cp++; - } else { - output_encoding = nkf_enc_from_index(enc_idx); - continue; } if (cp[0] == '0'){ cp++; @@ -6232,6 +6232,7 @@ while ('0'<= *cp && *cp <='9') { alpha_f |= 1 << (*cp++ - '0'); } + if (alpha_f & ((1 << 2) | (1 << 3))) alpha_f |= 1; if (!alpha_f) alpha_f = 1; continue; case 'x': /* Convert X0201 kana to X0208 or X0201 Conversion */ >Release-Note: >Audit-Trail: >Unformatted:
Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?200904150301.n3F31n62082706>