diff options
Diffstat (limited to 'CPP/7zip/UI/FileManager/FSFolder.cpp')
| -rw-r--r-- | CPP/7zip/UI/FileManager/FSFolder.cpp | 8 |
1 files changed, 5 insertions, 3 deletions
diff --git a/CPP/7zip/UI/FileManager/FSFolder.cpp b/CPP/7zip/UI/FileManager/FSFolder.cpp index 7956d86..51dfaa9 100644 --- a/CPP/7zip/UI/FileManager/FSFolder.cpp +++ b/CPP/7zip/UI/FileManager/FSFolder.cpp | |||
| @@ -748,8 +748,8 @@ Z7_COM7F_IMF2(Int32, CFSFolder::CompareItems(UInt32 index1, UInt32 index2, PROPI | |||
| 748 | case kpidMTime: return CompareFileTime(&fi1.MTime, &fi2.MTime); | 748 | case kpidMTime: return CompareFileTime(&fi1.MTime, &fi2.MTime); |
| 749 | case kpidIsDir: | 749 | case kpidIsDir: |
| 750 | { | 750 | { |
| 751 | bool isDir1 = /* ss1 ? false : */ fi1.IsDir(); | 751 | const bool isDir1 = /* ss1 ? false : */ fi1.IsDir(); |
| 752 | bool isDir2 = /* ss2 ? false : */ fi2.IsDir(); | 752 | const bool isDir2 = /* ss2 ? false : */ fi2.IsDir(); |
| 753 | if (isDir1 == isDir2) | 753 | if (isDir1 == isDir2) |
| 754 | return 0; | 754 | return 0; |
| 755 | return isDir1 ? -1 : 1; | 755 | return isDir1 ? -1 : 1; |
| @@ -798,7 +798,9 @@ Z7_COM7F_IMF2(Int32, CFSFolder::CompareItems(UInt32 index1, UInt32 index2, PROPI | |||
| 798 | return MyStringCompareNoCase(comment1, comment2); | 798 | return MyStringCompareNoCase(comment1, comment2); |
| 799 | } | 799 | } |
| 800 | case kpidPrefix: | 800 | case kpidPrefix: |
| 801 | if (fi1.Parent < 0) return (fi2.Parent < 0) ? 0 : -1; | 801 | if (fi1.Parent == fi2.Parent) |
| 802 | return 0; | ||
| 803 | if (fi1.Parent < 0) return -1; | ||
| 802 | if (fi2.Parent < 0) return 1; | 804 | if (fi2.Parent < 0) return 1; |
| 803 | return CompareFileNames_ForFolderList( | 805 | return CompareFileNames_ForFolderList( |
| 804 | Folders[fi1.Parent], | 806 | Folders[fi1.Parent], |
