From b2d84b1607e38aaec4be56490b5194f64f1007ab Mon Sep 17 00:00:00 2001 From: Björn Stenberg Date: Mon, 17 Jan 2005 12:29:27 +0000 Subject: Reinserted patch 1.279 (was lost in move to filetree.c) git-svn-id: svn://svn.rockbox.org/rockbox/trunk@5577 a1c6a512-1295-4272-9138-f99709370657 --- apps/filetree.c | 8 ++++++++ 1 file changed, 8 insertions(+) (limited to 'apps/filetree.c') diff --git a/apps/filetree.c b/apps/filetree.c index 98d59b9e9a..aaf99dce92 100644 --- a/apps/filetree.c +++ b/apps/filetree.c @@ -135,6 +135,14 @@ static int compare(const void* p1, const void* p2) if (e1->attr & ATTR_DIRECTORY && e2->attr & ATTR_DIRECTORY) { /* two directories */ criteria = global_settings.sort_dir; + + if (e1->attr & ATTR_VOLUME || e2->attr & ATTR_VOLUME) + { /* a volume identifier is involved */ + if (e1->attr & ATTR_VOLUME && e2->attr & ATTR_VOLUME) + criteria = 0; /* two volumes: sort alphabetically */ + else /* only one is a volume: volume first */ + return (e2->attr & ATTR_VOLUME) - (e1->attr & ATTR_VOLUME); + } } else if (!(e1->attr & ATTR_DIRECTORY) && !(e2->attr & ATTR_DIRECTORY)) { /* two files */ -- cgit v1.2.3