From d1a04ebba8324f02c25c25e6b8115c9ebd0a8d96 Mon Sep 17 00:00:00 2001 From: Jens Georg Date: Thu, 7 Mar 2013 13:52:20 +0100 Subject: [PATCH] server: Fix check for invalid OCM flags This check has to be applied to items only, not all objects. https://bugzilla.gnome.org/show_bug.cgi?id=694155 --- src/librygel-server/rygel-object-creator.vala | 10 ++++++---- 1 file changed, 6 insertions(+), 4 deletions(-) diff --git a/src/librygel-server/rygel-object-creator.vala b/src/librygel-server/rygel-object-creator.vala index 2eedfe9..169650f 100644 --- a/src/librygel-server/rygel-object-creator.vala +++ b/src/librygel-server/rygel-object-creator.vala @@ -237,10 +237,12 @@ internal class Rygel.ObjectCreator: GLib.Object, Rygel.StateMachine { } // FIXME: Is this check really necessary? 7.3.118.4 passes without it. - if ((didl_object.dlna_managed & - (OCMFlags.UPLOAD | - OCMFlags.CREATE_CONTAINER | - OCMFlags.UPLOAD_DESTROYABLE)) != 0) { + // These flags must not be set on items. + if (didl_object is DIDLLiteItem && + ((didl_object.dlna_managed & + (OCMFlags.UPLOAD | + OCMFlags.CREATE_CONTAINER | + OCMFlags.UPLOAD_DESTROYABLE)) != 0)) { throw new ContentDirectoryError.BAD_METADATA ("Flags that must not be set " + "were found in 'dlnaManaged'"); -- 2.7.4