◀ANSI版開発トップへ
  • 5464 ANSI版の更新履歴について
    • 5465 Re:ANSI版の更新履歴について
      • 5466 Re2:ANSI版の更新履歴について
        • 5469 Re3:ANSI版の更新履歴について
    • 5470 Re:ANSI版の更新履歴について
      • 5471 Re2:ANSI版の更新履歴について
        • 5472 Re3:ANSI版の更新履歴について
          • 5474 Re4:ANSI版の更新履歴について
          • 5475 Re4:ANSI版の更新履歴について
            • 5476 Re5:ANSI版の更新履歴について
              • 5478 Re6:ANSI版の更新履歴について
                • 5480 Re7:ANSI版の更新履歴について
                • 5482 Re7:ANSI版の更新履歴について
                  • 5624 Re8:ANSI版の更新履歴について
        • 5473 Re3:ANSI版の更新履歴について
  • [5464] ANSI版の更新履歴について げんた 2008年11月21日 10:16

    リリース時のために変更履歴をWikiのHistoryページに記入するようにしていたのですが,最近誰も更新してくれないのでHistory/x.x.x.x のページには1つしか記入されておりません.

    自分でSubversionのlogから復元しようかとも思いましたが掲示板の当該記事を見つけるのが難しそうなので,ここ半年のANSI版のcommit状況を把握している人がいましたらどなたか更新していただけないでしょうか.
    • [5465] Re:ANSI版の更新履歴について syat 2008年11月22日 01:27

      自分がコミットしたものは記入しました。
      またバグ修正のところにBugsInfo.txtの内容をとりあえず貼りつけておきました。
      • [5466] Re2:ANSI版の更新履歴について げんた 2008年11月22日 13:30

        subversionの履歴から変更履歴を分かる範囲で作成しました.
        念のため,ご確認ください.
        誤りや抜けがあるようでしたら修正・追記をお願いします.

        更新履歴が完成したら,現時点のものをリリース版として登録するつもりです.
        (自分では新機能や修正の確認はしてませんが(^^;))
        • [5469] Re3:ANSI版の更新履歴について ryoji 2008年11月22日 23:07

          ▼ げんたさん
          > subversionの履歴から変更履歴を分かる範囲で作成しました.
          > 念のため,ご確認ください.
          > 誤りや抜けがあるようでしたら修正・追記をお願いします.

          ひととおり見て、いくつか修正・追記(新規追加分>>dev:5461含む)しておきました。
    • [5470] Re:ANSI版の更新履歴について なすこじ 2008年11月23日 00:25

      すみません。多忙な上携帯しかない状態なのであまり確認できてないです m(_ _)m
      ぱっと見では私絡みの所はOKと思います。

      その他では、以下をコミットして欲しいです。
       #1849852 #if(0)でC/C++アウトライン解析に失敗

      また、できれば以下のレビューもお願いしたいです。
       2002211 長すぎるファイルパスのオープン・クローズで落ちる
       2124374 設定ダイアログでOKすると非アクティブなウィンドウのツールバーが全て有効となる

      ではでは。
      • [5471] Re2:ANSI版の更新履歴について げんた 2008年11月23日 02:47

        >ぱっと見では私絡みの所はOKと思います。
        Wikiですので,後ほど気づいたときでもかまいません.

        >その他では、以下をコミットして欲しいです。
        > #1849852 #if(0)でC/C++アウトライン解析に失敗
        ああっ,すいません(^^ゞ
        sakura/trunk#1471でcommitしました.

        >また、できれば以下のレビューもお願いしたいです。
        > 2002211 長すぎるファイルパスのオープン・クローズで落ちる
        > 2124374 設定ダイアログでOKすると非アクティブなウィンドウのツールバーが全て有効となる
        差分を確認の上,Patchesにコメントを追記しました.
        2124374の方はcommitしても良いと思います.
        • [5472] Re3:ANSI版の更新履歴について なすこじ 2008年11月24日 02:31

          #2002211を更新しました。

          --

          チェックをDoModal...()の関数からGetOpenFileNameRecover()/GetSaveFileName
          Recover()
          に移動しました。
          また、バックアップファイル作成時のファイルパスもチェックするようにしました。

          前回は気が付きませんでしたが、上書き確認の後にパス長確認になっています。
          なので、フックを使わない場合上書き確認でOKした後パス長でエラーとなります。
          フックを使う場合、プロシージャ内で_MAX_PATH未満にパスを切り詰めているので
          上書き確認できず、たまたまパス長エラーだけが表示されます。
          (切り詰めたパス名と同名ファイルがあると上書き確認される)

          セーブダイアログは必ずフックを使用しプロシージャ内でもパス長チェックする
          のが理想的と思いますが、今回そこまでは修正していません。

          260バイト以上のパス長のファイルは、"C:\a"のような1文字フォルダに長い
          ファイル名のファイルを作成しフォルダ名を変更すると作成可能です。

          --

          悩ましい感じもするので、長引くようなら#2002211は次回リリースに持ち越しましょう (^^;
          • [5474] Re4:ANSI版の更新履歴について ryoji 2008年11月24日 12:35

            > 悩ましい感じ
            気付いちゃったのね(^^;;;
          • [5475] Re4:ANSI版の更新履歴について げんた 2008年11月24日 14:05

            >前回は気が付きませんでしたが、上書き確認の後にパス長確認になっています。
            >なので、フックを使わない場合上書き確認でOKした後パス長でエラーとなります。
            >フックを使う場合、プロシージャ内で_MAX_PATH未満にパスを切り詰めているので
            >上書き確認できず、たまたまパス長エラーだけが表示されます。
            >(切り詰めたパス名と同名ファイルがあると上書き確認される)
            OFNHookProc()のcase CDN_FILEOK: 処理のところですね.確かに...

            >セーブダイアログは必ずフックを使用しプロシージャ内でもパス長チェックする
            >のが理想的と思いますが、今回そこまでは修正していません。
            まあ,微妙なところなのでこのままでも良いのではないでしょうか.

            >260バイト以上のパス長のファイルは、"C:\a"のような1文字フォルダに長い
            >ファイル名のファイルを作成しフォルダ名を変更すると作成可能です。
            作成可能ではありますが,Windowsにアクセスを拒否されるみたいです.

            --
            もう一点,普通はやらないと思いますが,バックアップの詳細設定を使用して(CEditDoc::FormatBackUpPath()のm_bBackUpPathAdvanced=1の場合),たとえば $0_$0_$0_$0_$0_$0_$0_$0_$0_$0といったパターンが指定されると,バックアップ文字列がファイル名の何倍にもなり,1024バイトの内部バッファを突破して悲しいことになります.ですので,厳密に言えばCEditDoc.cppの1747行目付近のファイル名・ディレクトリ名置換,および1778行目の拡張子置換の各ループ毎に長さチェックが必要だと思います.
            • [5476] Re5:ANSI版の更新履歴について なすこじ 2008年11月25日 15:44

              ▼ げんたさん
              > >セーブダイアログは必ずフックを使用しプロシージャ内でもパス長チェックする
              > >のが理想的と思いますが、今回そこまでは修正していません。
              > まあ,微妙なところなのでこのままでも良いのではないでしょうか.

              そうですね。元々_MAX_PATHを超えないようにしてあったのでこのままにしておきます。

              > >260バイト以上のパス長のファイルは、"C:\a"のような1文字フォルダに長い
              > >ファイル名のファイルを作成しフォルダ名を変更すると作成可能です。
              > 作成可能ではありますが,Windowsにアクセスを拒否されるみたいです.

              ファイル名に2バイト文字があればいけるのではないでしょうか?
              私の所のWin2k SP4では、266バイトのパス長のファイルがunicode版で編集可能です。

              > もう一点,普通はやらないと思いますが,バックアップの詳細設定を使用して(CEditDoc::FormatBackUpPath()のm_bBackUpPathAdvanced=1の場合),たとえば $0_$0_$0_$0_$0_$0_$0_$0_$0_$0といったパターンが指定されると,バックアップ文字列がファイル名の何倍にもなり,1024バイトの内部バッファを突破して悲しいことになります.ですので,厳密に言えばCEditDoc.cppの1747行目付近のファイル名・ディレクトリ名置換,および1778行目の拡張子置換の各ループ毎に長さチェックが必要だと思います.

              対処したパッチを作成しました。

              ではでは。
              • [5478] Re6:ANSI版の更新履歴について げんた 2008年11月25日 23:48

                >> 長さチェックが必要だと思います.
                >対処したパッチを作成しました。
                確認しましたが,拡張子置換でのエラーチェックで break が抜けているようです.
                それ以外はOKかと思います.
                • [5480] Re7:ANSI版の更新履歴について なすこじ 2008年11月26日 00:35

                  ▼ げんたさん
                  > >> 長さチェックが必要だと思います.
                  > >対処したパッチを作成しました。
                  > 確認しましたが,拡張子置換でのエラーチェックで break が抜けているようです.
                  > それ以外はOKかと思います.

                  何度もすみません m(_ _)m
                  明日修正します。
                • [5482] Re7:ANSI版の更新履歴について なすこじ 2008年11月26日 23:24

                  ▼ げんたさん
                  > >> 長さチェックが必要だと思います.
                  > >対処したパッチを作成しました。
                  > 確認しましたが,拡張子置換でのエラーチェックで break が抜けているようです.
                  > それ以外はOKかと思います.

                  breakを追加しrev1474でコミットしました。
                  • [5624] Re8:ANSI版の更新履歴について あろか 2009年10月10日 04:55

                    ▼ なすこじさん
                    > breakを追加しrev1474でコミットしました。

                    バックアップの詳細設定を使用して、上位のフォルダを多く残すようにした場合、ファイルが浅い階層にあるときに sakura.exe が異常終了するようになっていました。

                    確認手順: $2\$1\$0 のように指定して C:\temp.txt を編集・保存する。
                    パッチ: #2875910 を作成しました。
        • [5473] Re3:ANSI版の更新履歴について なすこじ 2008年11月24日 03:10

          > 2124374の方はcommitしても良いと思います.

          書き忘れてしまった (^^;
          rev1472でコミットしました。