--- a/win32.c Mon Oct 17 10:09:37 2005 +0000
+++ b/win32.c Mon Oct 17 19:57:00 2005 +0000
@@ -644,12 +644,13 @@
const FiosItem *db = (const FiosItem *)b;
int r;
- if (_savegame_sort_order < 2) // sort by date
+ if (_savegame_sort_order & SORT_BY_NAME) {
+ r = strcasecmp(da->title, db->title);
+ } else {
r = da->mtime < db->mtime ? -1 : 1;
- else
- r = strcasecmp(da->title, db->title);
+ }
- if (_savegame_sort_order & 1) r = -r;
+ if (_savegame_sort_order & SORT_DESCENDING) r = -r;
return r;
}
@@ -698,7 +699,7 @@
{
/* XXX ugly global variables ... */
byte order = _savegame_sort_order;
- _savegame_sort_order = 2; // sort ascending by name
+ _savegame_sort_order = SORT_BY_NAME | SORT_ASCENDING;
qsort(_fios_items, _fios_count, sizeof(FiosItem), compare_FiosItems);
_savegame_sort_order = order;
}
@@ -812,7 +813,7 @@
{
/* XXX ugly global variables ... */
byte order = _savegame_sort_order;
- _savegame_sort_order = 2; // sort ascending by name
+ _savegame_sort_order = SORT_BY_NAME | SORT_ASCENDING;
qsort(_fios_items, _fios_count, sizeof(FiosItem), compare_FiosItems);
_savegame_sort_order = order;
}