diff --git a/reactos/subsys/system/explorer/explorer.cpp b/reactos/subsys/system/explorer/explorer.cpp index 16df1421e80..e2814553cd8 100644 --- a/reactos/subsys/system/explorer/explorer.cpp +++ b/reactos/subsys/system/explorer/explorer.cpp @@ -534,8 +534,10 @@ void explorer_show_frame(int cmdshow, LPTSTR lpCmdLine) g_Globals._prescan_nodes = false; + bool mdi = true; //@@ + // create main window - MainFrameBase::Create(lpCmdLine, true, cmdshow); + MainFrameBase::Create(lpCmdLine, mdi, cmdshow); } diff --git a/reactos/subsys/system/explorer/shell/entries.cpp b/reactos/subsys/system/explorer/shell/entries.cpp index e849688bed7..cb008704068 100644 --- a/reactos/subsys/system/explorer/shell/entries.cpp +++ b/reactos/subsys/system/explorer/shell/entries.cpp @@ -168,10 +168,16 @@ Root::~Root() // directories first... static int compareType(const WIN32_FIND_DATA* fd1, const WIN32_FIND_DATA* fd2) { - int dir1 = fd1->dwFileAttributes & FILE_ATTRIBUTE_DIRECTORY; - int dir2 = fd2->dwFileAttributes & FILE_ATTRIBUTE_DIRECTORY; + int order1 = fd1->dwFileAttributes & FILE_ATTRIBUTE_DIRECTORY; + int order2 = fd2->dwFileAttributes & FILE_ATTRIBUTE_DIRECTORY; - return dir2==dir1? 0: dir2cFileName[0]!='.'? 1: fd1->cFileName[1]=='.'? 2: fd1->cFileName[1]=='\0'? 3: 1; + order2 = fd2->cFileName[0]!='.'? 1: fd2->cFileName[1]=='.'? 2: fd2->cFileName[1]=='\0'? 3: 1; + } + + return order2==order1? 0: order2dwFileAttributes & FILE_ATTRIBUTE_DIRECTORY; - int dir2 = fd2->dwFileAttributes & FILE_ATTRIBUTE_DIRECTORY; + int order1 = fd1->dwFileAttributes & FILE_ATTRIBUTE_DIRECTORY; + int order2 = fd2->dwFileAttributes & FILE_ATTRIBUTE_DIRECTORY; - return dir2==dir1? 0: dir2cFileName[0]!='.'? 1: fd1->cFileName[1]=='.'? 2: fd1->cFileName[1]=='\0'? 3: 1; + order2 = fd2->cFileName[0]!='.'? 1: fd2->cFileName[1]=='.'? 2: fd2->cFileName[1]=='\0'? 3: 1; + } + + return order2==order1? 0: order2