diff options
author | Wim Taymans <wim.taymans@gmail.com> | 2001-12-24 12:29:33 +0000 |
---|---|---|
committer | Wim Taymans <wim.taymans@gmail.com> | 2001-12-24 12:29:33 +0000 |
commit | c3915007a70e76068e89a0c3da095a7d4fa876a2 (patch) | |
tree | 2a7bbf4be2e91193748d60d97259c8d3be792ff2 /ext/mikmod/gstmikmod.c | |
parent | 18d104e45ada275f6ea9c1b1c7f962cac1bfebf5 (diff) |
Added EOS, add yield to avoid infinite loop
Original commit message from CVS:
Added EOS, add yield to avoid infinite loop
Diffstat (limited to 'ext/mikmod/gstmikmod.c')
-rw-r--r-- | ext/mikmod/gstmikmod.c | 12 |
1 files changed, 9 insertions, 3 deletions
diff --git a/ext/mikmod/gstmikmod.c b/ext/mikmod/gstmikmod.c index a8b6a345..adca578b 100644 --- a/ext/mikmod/gstmikmod.c +++ b/ext/mikmod/gstmikmod.c @@ -405,10 +405,16 @@ gst_mikmod_loop (GstElement *element) )); do { - if ( Player_Active() ) + if ( Player_Active() ) { drv_gst.Update(); - - gst_element_yield (element); + + gst_element_yield (element); + } + else { + gst_element_set_state (GST_ELEMENT (mikmod), GST_STATE_PAUSED); + gst_pad_push (mikmod->srcpad, gst_event_new (GST_EVENT_EOS)); + } + } while ( 1 ); } |