[grilo] core: Check options when decorating a media



commit 2958b268b7fbffaf70740856784913b252f13527
Author: Juan A. Suarez Romero <jasuarez igalia com>
Date:   Thu Feb 7 12:36:49 2013 +0000

    core: Check options when decorating a media
    
    When decorating a media (adding missing keys in content from browse/search
    operations), make sure that the source involved in decoration gets the proper
    supported options.

 src/grl-source.c |    8 +++++++-
 1 files changed, 7 insertions(+), 1 deletions(-)
---
diff --git a/src/grl-source.c b/src/grl-source.c
index f25c79c..4083b5c 100644
--- a/src/grl-source.c
+++ b/src/grl-source.c
@@ -1731,6 +1731,7 @@ media_decorate (GrlSource *main_source,
   GList *s, *sources;
   guint operation_id;
   GrlOperationOptions *decorate_options;
+  GrlOperationOptions *supported_options;
   GrlResolutionFlags flags;
 
   flags = grl_operation_options_get_flags (options);
@@ -1755,8 +1756,13 @@ media_decorate (GrlSource *main_source,
 
   for (s = sources; s; s = g_list_next (s)) {
     if (grl_source_supported_operations (s->data) & GRL_OP_RESOLVE) {
-      operation_id = grl_source_resolve (s->data, media, keys, decorate_options,
+      grl_operation_options_obey_caps (decorate_options,
+                                       grl_source_get_caps (s->data, GRL_OP_RESOLVE),
+                                       &supported_options,
+                                       NULL);
+      operation_id = grl_source_resolve (s->data, media, keys, supported_options,
                                          media_decorate_cb, mdd);
+      g_object_unref (supported_options);
       if (operation_id > 0) {
         g_hash_table_insert (mdd->pending_callbacks,
                              s->data,


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