meeyar さんが書きました:
お願い文を読んだ時点では、未patchかpatch済のどちらで行えばいいのか判断できなかったのでpatch済でやってしまいました。
未patchとpatch済の両方が必要だったから、全く問題なし。どっちが先でも、足りない方を後でおねがいすりゃぁいい(^^)
未patchの方は、Mac OS X上のTb 38で、ローカルのメッセージフォルダーでの問題が起こるかどうか、の判断に必要で、
patch済の方だと、そのパッチの手法が、問題を回避できる手法の一つである、と、判断できます。
meeyar さんが書きました:
WADA さんが書きました:
バグにも書いたんですが、
this.server.rootMsgFolder.QueryInterface(Ci.nsIMsgLocalMailFolder).createLocalSubfolder(this.folderName);
⇒ this.server.rootMsgFolder.createSubfolder(this.folderName);
に書き換えると、どうなりますか?
createLocalSubfolderはnsIMsgFolderオブジェクトを返すので、ファイルを作った後にグローバルオブジェクト内にオブジェクトを作りますが、
createSubfolderはnsIMsgFolderオブジェクトを返さないので、ファイルを作った後にグローバルオブジェクト内にオブジェクトを作らない、といった違いがあるはずです。
これを行ってみました。
書き換えの前と変わらないような印象。
createLocalSubfolderでもcreateSubfolderでも、直後に得られるnsImsgFolder.URIには、NFCの形式のデータがセットされているようですね。
これは、ローカルのメッセージフォルダーのメッセージフィルターや検索フォルダーのテスト結果と合致します。
メッセージフィルターなどの他のタスクからのフォルダーへのアクセスでは、フィードに対するパッチの後は、フィードがファイルを作った時に内部的に作られたnsImsgFolderオブジェクトを参照しないことによって、再起動後と同様に、nsImsgFolder.URIにNFDの形式のデータがセットされているオブジェクトが返されるようです。
alta88は、Mac OS Xでの実際のテストを自分ではできなくても、そのあたりは理解しているようで、新バージョンの 8684700 では、feeds.rdfのアクセスキーとしては、常にNFC(composed form)に変換したnsImsgFolder.URIのデータを使う、と言う方針に見えます。
meeyarさんのテスト結果をあのバグでalta88に伝える、というようなことはしていませんから、誰かMac OS Xを使える人に簡単なテストを依頼するとかしているのかもしれませんね。
meeyar さんが書きました:
プログラミングのスキル皆無なので、コードの詳細な内容は正直読めないのですが、(略)
その点は、alta88がプロフェッショナルだから、安心。
そして、今回のバグのメッセンジャーボーイをしながら、自分のテスト用に作ったアドオンで、ローカルのメールフォルダーに好きなようにTrashだのDraftsだのArchiveだのの属性をセットしてアイコンも変えて遊んでいる、私の担当分野。
「Trash」よりも先に見つかるフォルダーに「Trash」の属性を付けると、メールの削除もゴミ箱を空にするも、そっちを使うので、Thunderbirdに意地悪をして遊べる(^^)
(メールの削除・ゴミ箱を空にする、の現在の仕様がそうなっている、というだけなんですけどね)
meeyar さんが書きました:
確認作業が滞って申し訳ありません。
そんなことは無いですよ。
alta88は、現象・原因については良くわかってくれていて、これはまだ最終版じゃないから、パッチの細かいことを気にするな、とかいいながら、いろんなところでの修正案を、パッチという形で提示してくれていて、既に、新バージョンの 8684700 がでています。
ドイツとかフランスとかスペインとかで、ダイアクリティカル・マーク(Diacritical Mark = 補助記号)、
アキュート ( ́ ) 上ドット ( ˙ ) 上フック ( ̉ ) 上リング ( ̊ ) オゴネク ( ˛ ) キャロン ( ̌ )
グレーブ ( ̀ ) サーカムフレックス ( ̂ ) 下コンマ ( ̦ ) 下ドット ( ̣ ) ストローク ( / )
セディラ (̧) ダイエレシス ( ̈ ) ダブルアキュート ( ̋ ) チルド ( ̃ )
ブリーブ ( ̆ ) ホーン ( ̛ ) マクロン ( ̄ )
を多用したフィードをたくさん作ってくれれば、ヨーロッパの人もパッチのテストに参加してくれるだろうけど、
今は、meeyarさんだけが頼りで、KTBNさんが、omni.jaを解凍してソースをエディットしてomni.jaに圧縮、の裏技を習得してくれることを望むのみ(^^)
問題自体は、細かなところを除いて、既にかなり良くわかってきていて、デベロッパーも良くわかっていて、後は最も良い変更を見つけ出すだけ、という段階ですから、あわてることはない。
alta88がパッチを提示してきたら、ちょこっとテストして、ちゃんと直っていないから却下、と宣告するだけでいい(^^)
フィードの問題は、パッチはまだ確定してはいなくても、既に非常に簡単な回復手順が提示されていて、影響を受けるユーザーの数も、現時点では圧倒的に限られています。
むしろ、影響を受けるユーザーの数がフィードに比べると遙かに多い、ローカルのメールフォルダーのメッセージフィルター・検索フォルダー問題の方が重要。