bitcoin 0.3 win64 - ユーザー名に非ラテン文字がある場合の APPDATA アクセス不具合
ユーザーアカウント名に非ラテン文字を使うのが賢い選択ではないことは分かっている。いずれにせよ、0.2 ではこの問題は発生しなかった。
以下の方法で検証した。「通常の」新規ユーザーを作成すると、0.3 はデータフォルダーを正常に開いた。 新しいデータフォルダー を作成し、非標準ユーザーにコピーしたところ、0.3 は DB_RUN_RECOVERY エラーで失敗した。
それを発見してくれてありがとう。0.2 では ANSI を使用していたが、バージョン 0.3 で UTF-8 に切り替えたので、それに関連しているはずだ。
確認のために、非ラテン文字のユーザー名でログインし、まだ appdata/Bitcoin ディレクトリがない状態で Bitcoin を実行し、データベースをゼロから作成させた場合、動作するか、しないか?
問題の場所が分かったと思う。偶然にも、最近、問題の関数の代替を書いたところで、これで修正されるはずだ。まだ有効にしていないが、SVN バージョンでは debug.log に新しいディレクトリ値と古い値を比較用に表示するデバッグメッセージが出力される。
XP 上で非下位 ASCII のアカウント名でテストしてバグを確認し、その後新しい GetDefaultDataDir で修正されたことをテストした。この変更は SVN のリビジョン 102 だ。