[rygel] server: Make sure tags don't contain white-spaces
- From: Jens Georg <jensgeorg src gnome org>
- To: commits-list gnome org
- Cc:
- Subject: [rygel] server: Make sure tags don't contain white-spaces
- Date: Sat, 28 Jun 2014 12:32:39 +0000 (UTC)
commit 181e0c00ea7574487fac642c9e5983da42514448
Author: Jens Georg <mail jensge org>
Date: Sat Jun 28 13:54:59 2014 +0200
server: Make sure tags don't contain white-spaces
When getting tag lists during item update.
Signed-off-by: Jens Georg <mail jensge org>
src/librygel-server/rygel-item-updater.vala | 24 +++++++++++++++++++++++-
1 files changed, 23 insertions(+), 1 deletions(-)
---
diff --git a/src/librygel-server/rygel-item-updater.vala b/src/librygel-server/rygel-item-updater.vala
index 9f1870e..f268a05 100644
--- a/src/librygel-server/rygel-item-updater.vala
+++ b/src/librygel-server/rygel-item-updater.vala
@@ -1,7 +1,9 @@
/*
* Copyright (C) 2012 Intel Corporation.
+ * Copyright (C) 2013 Cable Television Laboratories, Inc.
*
* Author: Krzesimir Nowak <krnowak openismus com>
+ * Doug Galligan <doug sentosatech com>
*
* This file is part of Rygel.
*
@@ -98,6 +100,23 @@ internal class Rygel.ItemUpdater: GLib.Object, Rygel.StateMachine {
}
}
+ // Remove any leading or trailing spaces for the corresponding text node.
+ private static string format_tag_values (string tag_values) {
+ if (tag_values.length > 0 && tag_values.get_char (0) == '<') {
+ var init_split = tag_values.split ("</");
+ var tag_name = init_split[1].substring
+ (0, init_split[1].length - 1)
+ ._strip ();
+ var tag_value = init_split[0].split (">")[1]._strip ();
+ debug ("Tag Name formatted :%s", tag_name);
+ debug ("Tag Value formatted :%s", tag_value);
+
+ return "<%s>%s</%s>".printf (tag_name, tag_value, tag_name);
+ }
+
+ return tag_values;
+ }
+
private static LinkedList<string> csv_split (string? tag_values) {
var list = new LinkedList<string> ();
@@ -139,7 +158,10 @@ internal class Rygel.ItemUpdater: GLib.Object, Rygel.StateMachine {
}
}
- list.add (ItemUpdater.unescape (tag_values.substring (token_start)));
+ var stripped_values = tag_values.substring (token_start).strip ();
+
+ list.add (ItemUpdater.format_tag_values (
+ ItemUpdater.unescape (stripped_values)));
return list;
}
[
Date Prev][
Date Next] [
Thread Prev][
Thread Next]
[
Thread Index]
[
Date Index]
[
Author Index]