C++でアウトライン解析のソートを一度「アルファベット順」にしたあと「デフォルト」に戻すと元に戻らないことがあったバグの修正です。
修正ではC++/Javaツリーの時はLParamには登録順を登録しておき、無効のLParamを覚えておくことで、後でダミー項目かFuncInfoArrのメンバかを判別するようにしました。
名前空間内にClassName::Method記法の定義or実装があると発生します。
MyNameSpace 名前空間 lParam = -64000
_定義位置 lParam = 0
_FreeFunction lParam = 1
_ClassName クラス lParam = -63999
__Method lParam = 2
のように最初は定義順に並びますが、デフォルトに戻すときはlParam順に並び替えるのでクラスが前に回されてしまいます。
ソート順がおかしくなるサンプルC++
コメント追記修正しました。
デフォルト→アルファベット順→デフォルト
に変更したときにデフォルトの順番が変わらないことを確認しました。
Last edit: novice123 2016-09-11
[r4133]でcommitしました。
Related
Commit: [r4133]