[gcab] 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] trivial: Sort the globbed files to avoid depending on filesystem order
- Date: Thu, 14 Dec 2017 13:36:16 +0000 (UTC)
commit 11f9872fd19527074d50c82f6d9ecda0ee683cd2
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 fc9b389..174a5c6 100644
--- a/libgcab/gcab-folder.c
+++ b/libgcab/gcab-folder.c
@@ -210,6 +210,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)
@@ -235,6 +243,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]