[tracker-miners/sam/plain-text-ie: 1/2] tracker-extract-text: Always create content resource




commit 55e456694bb5a7f2e3079f317455bfbc6dc9e359
Author: Sam Thursfield <sam afuera me uk>
Date:   Mon Aug 24 22:29:03 2020 +0200

    tracker-extract-text: Always create content resource
    
    In Tracker 3, each file is represtented with 2 resources, one which
    represents the file on disk (the "data object") and one which represents
    the contents (the "information element").
    
    Since https://gitlab.gnome.org/GNOME/tracker-miners/-/merge_requests/217
    we didn't create the latter resource for text files if we didn't extract
    the contents.  This led to a problem where Nautilus couldn't star those
    files (https://gitlab.gnome.org/GNOME/nautilus/-/merge_requests/553#note_893909).
    
    We now always create the nfo:PlainTextDocument resource.

 src/tracker-extract/tracker-extract-text.c | 12 ++++++------
 1 file changed, 6 insertions(+), 6 deletions(-)
---
diff --git a/src/tracker-extract/tracker-extract-text.c b/src/tracker-extract/tracker-extract-text.c
index b1d6e5611..9d3a693f1 100644
--- a/src/tracker-extract/tracker-extract-text.c
+++ b/src/tracker-extract/tracker-extract-text.c
@@ -108,6 +108,9 @@ tracker_extract_get_metadata (TrackerExtractInfo *info)
        text_allowlist_patterns = tracker_config_get_text_allowlist_patterns (config);
        file = tracker_extract_info_get_file (info);
 
+       metadata = tracker_resource_new (NULL);
+       tracker_resource_add_uri (metadata, "rdf:type", "nfo:PlainTextDocument");
+
        if (allow_file (text_allowlist_patterns, file)) {
                content = get_file_content (tracker_extract_info_get_file (info),
                                            tracker_config_get_max_bytes (config),
@@ -120,19 +123,16 @@ tracker_extract_get_metadata (TrackerExtractInfo *info)
                        return FALSE;
                }
 
-               metadata = tracker_resource_new (NULL);
-               tracker_resource_add_uri (metadata, "rdf:type", "nfo:PlainTextDocument");
-
                if (content) {
                        tracker_resource_set_string (metadata, "nie:plainTextContent", content);
                        g_free (content);
                } else {
                        tracker_resource_set_string (metadata, "nie:plainTextContent", "");
                }
-
-               tracker_extract_info_set_resource (info, metadata);
-               g_object_unref (metadata);
        }
 
+       tracker_extract_info_set_resource (info, metadata);
+       g_object_unref (metadata);
+
        return TRUE;
 }


[Date Prev][Date Next]   [Thread Prev][Thread Next]   [Thread Index] [Date Index] [Author Index]