X-Git-Url: http://git.mutantstargoat.com/user/nuclear/?a=blobdiff_plain;f=src%2Fmain.c;fp=src%2Fmain.c;h=fa7dbb1cf15037a2315e380ebbce44ab708a0016;hb=85b4b3f42fd47fbc9baff6f0aa988037f1b73bc1;hp=d6782190ffd1055f92092194f50eae81ea5c9fc8;hpb=44494b046145941d3bed279e0046cb0ef9279669;p=oftp diff --git a/src/main.c b/src/main.c index d678219..fa7dbb1 100644 --- a/src/main.c +++ b/src/main.c @@ -103,8 +103,15 @@ static int cmpnames(const void *a, const void *b) { const char *sa = *(const char**)a; const char *sb = *(const char**)b; - infomsg("cmp(%s, %s)\n", sa, sb); - return strcmp(sa, sb); + int isdir_a, isdir_b; + + isdir_a = sa[strlen(sa) - 1] == '/'; + isdir_b = sb[strlen(sb) - 1] == '/'; + + if(isdir_a == isdir_b) { + return strcmp(sa, sb); + } + return isdir_a ? -1 : 1; } void updateui(void) @@ -132,7 +139,7 @@ void updateui(void) ent = ent->next; } - //tui_sort_list(uilist, cmpnames); + tui_sort_list(uilist, cmpnames); tui_list_select(uilist, 0); ftp->modified &= ~FTP_MOD_REMDIR;