1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
|
--- browser.c.orig 2020-05-05 02:09:32 UTC
+++ browser.c
@@ -87,6 +87,12 @@ static int browser_compare_subject (const void *a, con
struct folder_file *pa = (struct folder_file *) a;
struct folder_file *pb = (struct folder_file *) b;
+ /* Always keep '..' in first menu position */
+ if (!strncmp(pa->display_name, "..", 2))
+ return(-1);
+ if (!strncmp(pb->display_name, "..", 2))
+ return(1);
+
int r = mutt_strcoll (pa->display_name, pb->display_name);
return ((BrowserSort & SORT_REVERSE) ? -r : r);
@@ -97,6 +103,12 @@ static int browser_compare_date (const void *a, const
struct folder_file *pa = (struct folder_file *) a;
struct folder_file *pb = (struct folder_file *) b;
+ /* Always keep '..' in first menu position */
+ if (!strncmp(pa->display_name, "..", 2))
+ return(-1);
+ if (!strncmp(pb->display_name, "..", 2))
+ return(1);
+
int r = pa->mtime - pb->mtime;
return ((BrowserSort & SORT_REVERSE) ? -r : r);
@@ -106,6 +118,12 @@ static int browser_compare_size (const void *a, const
{
struct folder_file *pa = (struct folder_file *) a;
struct folder_file *pb = (struct folder_file *) b;
+
+ /* Always keep '..' in first menu position */
+ if (!strncmp(pa->display_name, "..", 2))
+ return(-1);
+ if (!strncmp(pb->display_name, "..", 2))
+ return(1);
int r = pa->size - pb->size;
|