[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
[debian-users:42763] Re: [gettext] ja.po の msgid に non-ASCII 文字は使える?
- From: GOTO Masanori <gotom@debian.or.jp>
- Subject: [debian-users:42763] Re: [gettext] ja.po の msgid に non-ASCII 文字は使える?
- Date: Wed, 2 Feb 2005 12:54:10 +0900
- List-help: <mailto:debian-users-ctl@debian.or.jp?body=help>
- List-id: debian-users.debian.or.jp
- List-owner: <mailto:debian-users-admin@debian.or.jp>
- List-post: <mailto:debian-users@debian.or.jp>
- List-software: fml [fml 4.0.3 release (20011202/4.0.3)]
- List-unsubscribe: <mailto:debian-users-ctl@debian.or.jp?body=unsubscribe>
- X-ml-info: If you have a question, send e-mail with the body "help" (without quotes) to the address debian-users-ctl@debian.or.jp; help=<mailto:debian-users-ctl@debian.or.jp?body=help>
- X-ml-name: debian-users
- X-mlserver: fml [fml 4.0.3 release (20011202/4.0.3)]; post only (only members can post)
- X-original-to: debian-users@debian.or.jp
- X-spam-level:
- X-spam-status: No, hits=0.9 required=10.0 tests=IN_REP_TO,ISO2022JP_BODY,ISO2022JP_CHARSET, QUOTED_EMAIL_TEXT,RCVD_IN_ORBS,RCVD_IN_OSIRUSOFT_COM, REFERENCES,SPAM_PHRASE_00_01,USER_AGENT,X_OSIRU_OPEN_RELAY version=2.44
- References: <050122111744.M0103612@xxxxxxxxxxxxxxxxx> <050202020421.M0105065@xxxxxxxxxxxxxxxxx> <20050202.053231.95863715.yoshfuji@xxxxxxxxxxxxxx>
- Message-id: <81u0ovobvj.wl@xxxxxxxxxxxxxxxxxxxxxx>
- X-mail-count: 42763
- User-agent: Wanderlust/2.9.9 (Unchained Melody) SEMI/1.14.3 (Ushinoya) FLIM/1.14.3 (Unebigorymae) APEL/10.3 Emacs/21.2 (i386-debian-linux-gnu) MULE/5.0 (SAKAKI)
At Wed, 2 Feb 2005 02:04:21 +0900,
hma@xxxxxxxxxxxxx wrote:
> ハッシュ計算の中身とか、生成される .mo のフォーマットとか
> まだ理解できていないので、私一人で追い続けるとすると、
> もっと時間がかかりそうです。
> この段階で GlibC の開発元に一度投げた方がいいでしょうか?
濱崎さんのテストプログラムは試していませんが、手元で作成したテストプロ
グラムを最新 cvs で試したところ正常動作しています。おそらく以下のパッ
チで修正されたのでしょう。次の glibc 更新の時 (sarge リリース以後) に
直ります。
2003-10-19 Bruno Haible <bruno@xxxxxxxxx>
* intl/hash-string.c (hash_string): Zero-extend each char from the
string; the old code did a sign-extend on some platforms.
At Wed, 2 Feb 2005 05:31:44 +0900,
YOSHIFUJI Hideaki / 吉藤英明 wrote:
> diff -ru gettext-0.14.1/gettext-runtime/intl/hash-string.h gettext-0.14.1-fix/gettext-runtime/intl/hash-string.h
> --- gettext-0.14.1/gettext-runtime/intl/hash-string.h 2003-10-24 19:23:03.000000000 +0900
> +++ gettext-0.14.1-fix/gettext-runtime/intl/hash-string.h 2005-02-02 05:16:17.000000000 +0900
> @@ -36,7 +36,7 @@
> while (*str != '\0')
> {
> hval <<= 4;
> - hval += (unsigned char) *str++;
> + hval += (unsigned long int) *str++;
> g = hval & ((unsigned long int) 0xf << (HASHWORDBITS - 4));
> if (g != 0)
> {
もしハッシュのバグが原因であるとすれば、おそらく glibc に以下のパッチ
をあてれば直るでしょう (検証はしていません)。
--- intl/hash-string.c 11 Jun 2003 21:46:03 -0000 1.1
+++ intl/hash-string.c 24 Oct 2003 03:22:26 -0000 1.2
@@ -35,7 +35,7 @@ __hash_string (str_param)
while (*str != '\0')
{
hval <<= 4;
- hval += (unsigned long int) *str++;
+ hval += (unsigned char) *str++;
g = hval & ((unsigned long int) 0xf << (HASHWORDBITS - 4));
if (g != 0)
{
Regards,
-- gotom