From b95853477a252822dca24d0d650b764c945199a1 Mon Sep 17 00:00:00 2001 From: Simon Steinbeiss Date: Mon, 15 Jul 2019 22:53:37 +0200 Subject: [PATCH] directory-menu: Sort items naturally --- plugins/directorymenu/directorymenu.c | 12 +++++++++--- 1 file changed, 9 insertions(+), 3 deletions(-) diff --git a/plugins/directorymenu/directorymenu.c b/plugins/directorymenu/directorymenu.c index 378c601b..8e14465f 100644 --- a/plugins/directorymenu/directorymenu.c +++ b/plugins/directorymenu/directorymenu.c @@ -528,6 +528,8 @@ directory_menu_plugin_menu_sort (gconstpointer a, GFileType type_b = g_file_info_get_file_type (G_FILE_INFO (b)); gboolean hidden_a, hidden_b; const gchar *display_name_a, *display_name_b; + gchar *sort_display_name_a, *sort_display_name_b; + gint sort_value; if (type_a != type_b) { @@ -547,9 +549,13 @@ directory_menu_plugin_menu_sort (gconstpointer a, display_name_a = g_file_info_get_display_name (G_FILE_INFO (a)); display_name_b = g_file_info_get_display_name (G_FILE_INFO (b)); - - return strcmp (g_utf8_collate_key_for_filename (display_name_a, -1), - g_utf8_collate_key_for_filename (display_name_b, -1)); + sort_display_name_a = g_utf8_collate_key_for_filename (display_name_a, -1); + sort_display_name_b = g_utf8_collate_key_for_filename (display_name_b, -1); + sort_value = strcmp (sort_display_name_a, + sort_display_name_b); + g_free (sort_display_name_a); + g_free (sort_display_name_b); + return sort_value; } -- 2.19.1