[banshee] libbanshee: Fix message processing for dvd support



commit e0c705edfad923d4a43b773348ac8b82f4e23851
Author: Bertrand Lorentz <bertrand lorentz gmail com>
Date:   Sun Sep 25 19:16:07 2011 +0200

    libbanshee: Fix message processing for dvd support
    
    Both gst_element_query and gst_navigation_query_parse_commands_length
    return TRUE if successfull, so we were handling that wrong.
    
    Also do the query on the GstNavigation, doing it on the playbin seems
    wasteful.

 libbanshee/banshee-player-dvd.c |    8 +++++---
 1 files changed, 5 insertions(+), 3 deletions(-)
---
diff --git a/libbanshee/banshee-player-dvd.c b/libbanshee/banshee-player-dvd.c
index 844b386..55d499c 100644
--- a/libbanshee/banshee-player-dvd.c
+++ b/libbanshee/banshee-player-dvd.c
@@ -79,9 +79,11 @@ _bp_dvd_elements_process_message (BansheePlayer *player, GstMessage *message)
     GstQuery *query = gst_navigation_query_new_commands();
 
     guint n_cmds, i;
-    //execute query over playbin or navigation ?
-    if (gst_element_query (player->playbin, query)
-        && gst_navigation_query_parse_commands_length (query, &n_cmds)) {
+    if (!player->navigation) {
+        _bp_dvd_find_navigation (player);
+    }
+    if (!(gst_element_query (GST_ELEMENT_CAST (player->navigation), query)
+        && gst_navigation_query_parse_commands_length (query, &n_cmds))) {
         gst_query_unref (query);
         return;
     }



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