[tracker-miners/wip/carlosg/coverity-fixes: 6/11] tracker-writeback: Ensure keywords string is initialized before use
- From: Carlos Garnacho <carlosg src gnome org>
- To: commits-list gnome org
- Cc:
- Subject: [tracker-miners/wip/carlosg/coverity-fixes: 6/11] tracker-writeback: Ensure keywords string is initialized before use
- Date: Mon, 14 Sep 2020 10:33:07 +0000 (UTC)
commit 4e5d5f0bda019a7d7b44c43c3c63a9b0ff818657
Author: Carlos Garnacho <carlosg gnome org>
Date: Mon Sep 7 18:45:48 2020 +0200
tracker-writeback: Ensure keywords string is initialized before use
Also fix typos in the internal loop checks (we are checking keywords
to determine if keyword_str was null). All spotted by Coverity
CID: #359686, #359687, #359688, #359690
src/tracker-writeback/tracker-writeback-gstreamer.c | 9 ++++-----
src/tracker-writeback/tracker-writeback-xmp.c | 10 +++++-----
2 files changed, 9 insertions(+), 10 deletions(-)
---
diff --git a/src/tracker-writeback/tracker-writeback-gstreamer.c
b/src/tracker-writeback/tracker-writeback-gstreamer.c
index 21be79872..d83c9a13e 100644
--- a/src/tracker-writeback/tracker-writeback-gstreamer.c
+++ b/src/tracker-writeback/tracker-writeback-gstreamer.c
@@ -909,7 +909,7 @@ writeback_gstreamer_write_file_metadata (TrackerWritebackFile *writeback,
if (g_strcmp0 (prop, "nie:keyword") == 0) {
GList *keywords, *k;
- GString *keyword_str = NULL;
+ GString *keyword_str = g_string_new (NULL);
keywords = tracker_resource_get_values (resource, prop);
@@ -921,10 +921,9 @@ writeback_gstreamer_write_file_metadata (TrackerWritebackFile *writeback,
if (G_VALUE_HOLDS_STRING (value)) {
const gchar *str = g_value_get_string (value);
- if (!keywords)
- keyword_str = g_string_new (str);
- else
- g_string_append_printf (keyword_str, ",%s", str);
+ if (keyword_str->len > 0)
+ g_string_append_c (keyword_str, ',');
+ g_string_append_printf (keyword_str, "%s", str);
}
}
diff --git a/src/tracker-writeback/tracker-writeback-xmp.c b/src/tracker-writeback/tracker-writeback-xmp.c
index fc100a84c..481696994 100644
--- a/src/tracker-writeback/tracker-writeback-xmp.c
+++ b/src/tracker-writeback/tracker-writeback-xmp.c
@@ -248,7 +248,7 @@ writeback_xmp_write_file_metadata (TrackerWritebackFile *wbf,
if (g_strcmp0 (prop, "nie:keyword") == 0) {
GList *keywords, *k;
- GString *keyword_str = NULL;
+ GString *keyword_str = g_string_new (NULL);
keywords = tracker_resource_get_values (resource, prop);
@@ -260,10 +260,10 @@ writeback_xmp_write_file_metadata (TrackerWritebackFile *wbf,
if (G_VALUE_HOLDS_STRING (value)) {
const gchar *str = g_value_get_string (value);
- if (!keywords)
- keyword_str = g_string_new (str);
- else
- g_string_append_printf (keyword_str, ", %s", str);
+ if (keyword_str->len > 0)
+ g_string_append_c (keyword_str, ',');
+
+ g_string_append_printf (keyword_str, "%s", str);
}
}
[
Date Prev][
Date Next] [
Thread Prev][
Thread Next]
[
Thread Index]
[
Date Index]
[
Author Index]