diff options
author | Brian Cameron <Brian.Cameron@Sun.COM> | 2008-09-02 11:52:37 -0500 |
---|---|---|
committer | Lennart Poettering <lennart@poettering.net> | 2008-09-02 20:08:37 +0200 |
commit | 8643ae2355138dfb937a08b2dc0c4903fdac10c1 (patch) | |
tree | 18dccd0765db6e9b7d1136bed4045d8d4c747c48 | |
parent | 77975fda54598a71c1f654e178aa2bb8741f7fe5 (diff) |
fix bus_cb state handling
Lennart:
>> --- libcanberra-0.8/src/gstreamer.c-orig 2008-08-30 00:54:34.477944000 -0500
>> +++ libcanberra-0.8/src/gstreamer.c 2008-08-30 01:03:11.619656000 -0500
>> @@ -230,7 +230,7 @@ static GstBusSyncReply bus_cb(GstBus *bu
>> /* g_debug (gst_element_state_get_name (pending)); */
>>
>> if (pending == GST_STATE_NULL || pending == GST_STATE_VOID_PENDING)
>> - err = CA_SUCCESS;
>> + return TRUE;
>> else
>> return GST_BUS_DROP;
>> break;
>
> Uh? bus_cb returns a variable of type GstBusSyncReply. Returning TRUE
> here really doesn't make sense to me.
Oops, sorry about that.
I find changing the line to either GST_BUS_PASS or GST_BUS_ASYNC seems
to work just fine. Providing an updated patch which uses GST_BUS_PASS.
Brian
Signed-off-by: Lennart Poettering <lennart@poettering.net>
-rw-r--r-- | src/gstreamer.c | 2 |
1 files changed, 1 insertions, 1 deletions
diff --git a/src/gstreamer.c b/src/gstreamer.c index 6960b8a..59556a1 100644 --- a/src/gstreamer.c +++ b/src/gstreamer.c @@ -230,7 +230,7 @@ static GstBusSyncReply bus_cb(GstBus *bus, GstMessage *message, gpointer data) { /* g_debug (gst_element_state_get_name (pending)); */ if (pending == GST_STATE_NULL || pending == GST_STATE_VOID_PENDING) - err = CA_SUCCESS; + return GST_BUS_PASS; else return GST_BUS_DROP; break; |