[sylpheed-win32-users:74] Re: 中間報告 (Re: 0.8.3-20020919 をリリース)

Back to archive index

Hiroyuki Yamamoto hiro-****@kcn*****
2002年 9月 30日 (月) 15:13:13 JST


山本です。

On Sat, 28 Sep 2002 00:26:04 +0900
Munesato - NAK - Nakada <munes****@post*****> wrote:

> キャッシュフォルダが作成されない件の原因は、IMAP 機能部分から
> 渡されるパス区切りが '/' になっていることが原因でした。
> Win32 版的には、'/' を '\' に置換してしまえばよいと思いますが、
> 軽く動かした感じでは影響範囲が大きいようで、所々不具合が
> 見つかっていて面倒くさいことになっています。
> 
> Sylpheed 自体が IMAP の区切りである '/' と、OS のパス区切りが
> 同一であることを前提としている感じがする(*1)ので、そこいら辺を
> うまく切り分ける必要があります。
> # *1 imap.c 中に G_DIR_SEPARATOR が散見される。

imap.c では、 IMAP のパス区切りを一度 OS のパス区切りに変換してから
処理しています。 IMAP サーバにコマンドを送るときは再度 IMAP パス区切り
に変換し直して処理します。

# ちなみに IMAP のパス区切りは '/' だけでなく '.' 等も有り得ます
# (uw-imapd とか)。区切り文字はサーバから得ることができます。

今回のバグは、 imap_get_real_path() から呼ばれる
imap_path_separator_subst() や、imap_create_folder() で IMAP
パス区切りに変換する際に、 OS のパス区切りを '/' に決め打ち
してしまっているのが原因かな? という気がします。

この決め打ちしている部分を全部 G_DIR_SEPARATOR(_S) に置き換えれば
うまくいくかもしれません。

-- 
Hiroyuki Yamamoto <yamam****@good-*****>
http://www.good-day.co.jp/    (Good-Day)
http://www.good-day.net/      (Good-Day.NET)
http://sylpheed.good-day.net/ (Sylpheed)



sylpheed-win32-users メーリングリストの案内
Back to archive index