[前][次][番号順一覧][スレッド一覧]

sylpheed-jp:1868

From: Munesato - NAK - Nakada <munesato@xxxxxxxxxx>
Date: Fri, 19 Jul 2002 10:34:27 +0900
Subject: [sylpheed-jp:01868] Re: Sylpheed 0.8.0 released

NAK です。
ずっと考えていたのですが...、

On Wed, 17 Jul 2002 13:25:50 +0900
Munesato - NAK - Nakada <munesato@xxxxxxxxxx> wrote:

 > > > EUC-JP な環境を前提として、codeconv.c 内の conv_unmime_header() を
 > > > 流してゆくと、conv_jistodisp() が 2 回呼ばれています。
 > > 
 > > conv_unmime_header() 中での2回目の JIS -> EUC 変換は、 MIME エンコー
 > > ドされずにヘッダに生 JIS を入れられた場合への対処です。あんまり美しく
 > > ないですけど(^^;
 > 
 > JIS が含まれている/いないに関わらず、conv_jistodisp() されて
 > いたんで、何でだろう? と思っていました。

conv_unmime_header() 中で conv_jistodisp() が呼ばれる
タイミングは、unmime_header() の前のほうが良くないですか?

前に書いたコレ(↓)を元に話しますが、

 > conv_unmime_header{
 >   unmime_header{
 >     conv_codeset_strdup{
 >       conv_jistodisp{}  // 1: JIS to EUC (OK)  ... (1)
 >     }
 >   };
 >   conv_jistodisp{}      // 2: EUC to EUC (NG?) ... (2)
 > }

(1) は、MIME 化(?) された文字列のみを変換しますが、
(2) は、文字列全体を変換します。

最悪の場合、(1) が実行されたうえで、(2) が実行されると
(2) を呼び出す時点で、EUC-JP と JIS の混在が起こりえます。

ここで、(2) を unmime_header() より先に呼び出すとすると、
MIME 化(?) されている部分は無変換で (1) に渡されるので、
混在は起こらない気がします。

あと、(2) の conv_jistodisp() は固定ですが、ヘッダ情報から
得られる charaset で変換をかければ、生 EUC-JP、生 SJIS、
生 Latin1 等々、一般的に対応できるのではないかと思います。

-- 
中田 宗里 (NAK) <munesato@xxxxxxxxxx>

[前][次][番号順一覧][スレッド一覧]

      1852 2002-07-15 11:06 [hiro-y@xxxxxxxxxx   ] Sylpheed 0.8.0 released                 
      1853 2002-07-17 11:01 ┣[munesato@xxxxxxxxxx ]                                       
      1854 2002-07-17 12:00 ┃┗[hiro-y@xxxxxxxxxx   ]                                     
      1855 2002-07-17 13:25 ┃ ┗[munesato@xxxxxxxxxx ]                                   
->    1868 2002-07-19 10:34 ┃  ┗[munesato@xxxxxxxxxx ]                                 
      1856 2002-07-17 22:23 ┣[tmita@xxxxxxxxxx    ]                                       
      1857 2002-07-17 22:48 ┃┗[t-kitano@xxxxxxxxxx ]                                     
      1866 2002-07-18 21:04 ┃ ┗[tmita@xxxxxxxxxx    ]                                   
      1858 2002-07-18 10:16 ┗[ics-ts16@xxxxxxxxxx ]                                       
      1859 2002-07-18 11:58  ┗[nobushimizu@xxxxxxxx]                                     
      1860 2002-07-18 12:57   ┗[ics-ts16@xxxxxxxxxx ]                                   
      1861 2002-07-18 13:52    ┗[nobushimizu@xxxxxxxx]                                 
      1862 2002-07-18 14:27     ┗[ics-ts16@xxxxxxxxxx ]                               
      1863 2002-07-18 14:41      ┗[mimosa01@xxxxxxxxxx ]                             
      1864 2002-07-18 15:15       ┗[ics-ts16@xxxxxxxxxx ]                           
      1865 2002-07-18 17:32        ┗[donjo@xxxxxxxxxx    ]                         
      1869 2002-07-19 13:57         ┗[nobushimizu@xxxxxxxx]                       
      1870 2002-07-19 15:32          ┗[hiro-y@xxxxxxxxxx   ]                     
      1871 2002-07-19 15:52           ┗[nobushimizu@xxxxxxxx]                   
      1874 2002-07-20 13:13            ┣[mimosa01@xxxxxxxxxx ]                 
      1881 2002-07-23 13:33            ┗[hiro-y@xxxxxxxxxx   ]                 
      1882 2002-07-24 00:12             ┗[nobushimizu@xxxxxxxx]