[rygel] media-export: Use DLNA-compliant createClass
- From: Jens Georg <jensgeorg src gnome org>
- To: commits-list gnome org
- Cc:
- Subject: [rygel] media-export: Use DLNA-compliant createClass
- Date: Tue, 25 Jun 2013 11:43:16 +0000 (UTC)
commit 92885a059a5dbbca10e06d630631e33178dad622
Author: Jens Georg <jensg openismus com>
Date: Tue Jun 18 16:06:22 2013 +0200
media-export: Use DLNA-compliant createClass
DLNA does not like upnp:createClass other than object.container for
containers. So we use that and use the possibility to "upgrade" the
object's class upon creation.
https://bugzilla.gnome.org/show_bug.cgi?id=702258
...rygel-media-export-playlist-root-container.vala | 7 +++++--
1 files changed, 5 insertions(+), 2 deletions(-)
---
diff --git a/src/plugins/media-export/rygel-media-export-playlist-root-container.vala
b/src/plugins/media-export/rygel-media-export-playlist-root-container.vala
index 1779e61..66a6dde 100644
--- a/src/plugins/media-export/rygel-media-export-playlist-root-container.vala
+++ b/src/plugins/media-export/rygel-media-export-playlist-root-container.vala
@@ -49,7 +49,7 @@ internal class Rygel.MediaExport.PlaylistRootContainer : Rygel.WritableContainer
// We don't support adding real folders here, just playlist container
this.create_classes = new ArrayList<string> ();
- this.create_classes.add (Rygel.MediaContainer.PLAYLIST);
+ this.create_classes.add (Rygel.MediaContainer.UPNP_CLASS);
// Need to add an URI otherwise core doesn't mark the container as
// writable
@@ -75,12 +75,15 @@ internal class Rygel.MediaExport.PlaylistRootContainer : Rygel.WritableContainer
public async void add_container (Rygel.MediaContainer container,
Cancellable? cancellable)
throws Error {
- if (container.upnp_class != Rygel.MediaContainer.PLAYLIST) {
+ if (container.upnp_class != Rygel.MediaContainer.PLAYLIST &&
+ container.upnp_class != Rygel.MediaContainer.UPNP_CLASS) {
throw new WritableContainerError.NOT_IMPLEMENTED
(_("upnp:class not supported in %s"),
this.id);
}
+
container.id = "playlist:" + UUID.get ();
+ container.upnp_class = Rygel.MediaContainer.PLAYLIST;
this.media_db.save_container (container);
this.media_db.make_object_guarded (container);
[
Date Prev][
Date Next] [
Thread Prev][
Thread Next]
[
Thread Index]
[
Date Index]
[
Author Index]