[rygel] server: Fix check for invalid OCM flags



commit d1a04ebba8324f02c25c25e6b8115c9ebd0a8d96
Author: Jens Georg <jensg openismus com>
Date:   Thu Mar 7 13:52:20 2013 +0100

    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 files 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'");


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