summaryrefslogtreecommitdiff
path: root/src/nautilus-search-engine-simple.c
diff options
context:
space:
mode:
authorOndrej Holy <oholy@redhat.com>2023-03-08 15:27:24 +0100
committerOndrej Holy <oholy@redhat.com>2023-03-29 13:49:46 +0000
commitcbd4c1d95e7f8ef7847c39fd28c66fbbaa25f941 (patch)
tree4a9c427dc95111b896b77600880f5b1595111e61 /src/nautilus-search-engine-simple.c
parentfa27862d0c5f5d641a52f0b83812ac3d08c1cc7b (diff)
downloadnautilus-cbd4c1d95e7f8ef7847c39fd28c66fbbaa25f941.tar.gz
Add fast-content-type fallback to all places
The `G_FILE_ATTRIBUTE_STANDARD_CONTENT_TYPE` attribute doesn't have to be always set. The commit 0e597803 added the `G_FILE_ATTRIBUTE_STANDARD_FAST_CONTENT_TYPE` fallback inside the `NautilusFile` class, but not for other places. Let's fix this oversight. Fixes: https://gitlab.gnome.org/GNOME/nautilus/-/issues/2862
Diffstat (limited to 'src/nautilus-search-engine-simple.c')
-rw-r--r--src/nautilus-search-engine-simple.c9
1 files changed, 8 insertions, 1 deletions
diff --git a/src/nautilus-search-engine-simple.c b/src/nautilus-search-engine-simple.c
index 41c567c4b..bdfa5195d 100644
--- a/src/nautilus-search-engine-simple.c
+++ b/src/nautilus-search-engine-simple.c
@@ -302,7 +302,8 @@ visit_directory (GFile *dir,
enumerator = g_file_enumerate_children (dir,
data->mime_types->len > 0 ?
STD_ATTRIBUTES ","
- G_FILE_ATTRIBUTE_STANDARD_CONTENT_TYPE
+ G_FILE_ATTRIBUTE_STANDARD_CONTENT_TYPE ","
+ G_FILE_ATTRIBUTE_STANDARD_FAST_CONTENT_TYPE
:
STD_ATTRIBUTES
,
@@ -347,6 +348,12 @@ visit_directory (GFile *dir,
{
mime_type = g_file_info_get_attribute_string (info,
G_FILE_ATTRIBUTE_STANDARD_CONTENT_TYPE);
+ if (mime_type == NULL)
+ {
+ mime_type = g_file_info_get_attribute_string (info,
+ G_FILE_ATTRIBUTE_STANDARD_FAST_CONTENT_TYPE);
+ }
+
found = FALSE;
for (gint i = 0; mime_type != NULL && i < data->mime_types->len; i++)