[gcab/wip/hughsie/future: 14/18] trivial: Sort the globbed files to avoid depending on filesystem order
- From: Richard Hughes <rhughes src gnome org>
- To: commits-list gnome org
- Cc:
- Subject: [gcab/wip/hughsie/future: 14/18] trivial: Sort the globbed files to avoid depending on filesystem order
- Date: Wed, 13 Dec 2017 23:03:32 +0000 (UTC)
commit c5a1f9c7f7f53bf2e1c4846ff705a701ec308fe0
Author: Richard Hughes <richard hughsie com>
Date: Wed Dec 13 16:29:11 2017 +0000
trivial: Sort the globbed files to avoid depending on filesystem order
libgcab/gcab-folder.c | 12 ++++++++++++
1 files changed, 12 insertions(+), 0 deletions(-)
---
diff --git a/libgcab/gcab-folder.c b/libgcab/gcab-folder.c
index 449f4c7..b5433ac 100644
--- a/libgcab/gcab-folder.c
+++ b/libgcab/gcab-folder.c
@@ -211,6 +211,14 @@ add_file (GCabFolder *self, GCabFile *file, GError **error)
#define FILE_ATTRS "standard::*,time::modified"
+static gint
+_sort_cfiles (gconstpointer a, gconstpointer b)
+{
+ GCabFile *file_a = GCAB_FILE (a);
+ GCabFile *file_b = GCAB_FILE (b);
+ return g_strcmp0 (gcab_file_get_name (file_a), gcab_file_get_name (file_b));
+}
+
static gboolean
add_file_info (GCabFolder *self, GCabFile *file, GFileInfo *info,
const gchar *name, gboolean recurse, GError **error)
@@ -236,6 +244,10 @@ add_file_info (GCabFolder *self, GCabFile *file, GFileInfo *info,
g_object_unref (info);
return FALSE;
}
+
+ /* sort the files to avoid depending on filesystem order */
+ self->files = g_slist_sort (self->files, _sort_cfiles);
+
g_object_unref (info);
}
[
Date Prev][
Date Next] [
Thread Prev][
Thread Next]
[
Thread Index]
[
Date Index]
[
Author Index]