diff options
author | Guenter Bartsch <guenter@users.sourceforge.net> | 2001-06-03 18:08:56 +0000 |
---|---|---|
committer | Guenter Bartsch <guenter@users.sourceforge.net> | 2001-06-03 18:08:56 +0000 |
commit | 8f1375992e4ca75874af4693df751a935bfc9d0b (patch) | |
tree | 87f6f622f3cfcc69012a8a0efe752eccb66be60b /src/xine-engine/xine.c | |
parent | 346a22f8c859b2de000dfa5c34229b2ca0364a58 (diff) | |
download | xine-lib-8f1375992e4ca75874af4693df751a935bfc9d0b.tar.gz xine-lib-8f1375992e4ca75874af4693df751a935bfc9d0b.tar.bz2 |
bug fixes for xine_stop and xine_exit
CVS patchset: 117
CVS date: 2001/06/03 18:08:56
Diffstat (limited to 'src/xine-engine/xine.c')
-rw-r--r-- | src/xine-engine/xine.c | 37 |
1 files changed, 16 insertions, 21 deletions
diff --git a/src/xine-engine/xine.c b/src/xine-engine/xine.c index 2012be021..69ee62a2c 100644 --- a/src/xine-engine/xine.c +++ b/src/xine-engine/xine.c @@ -17,7 +17,7 @@ * along with this program; if not, write to the Free Software * Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA * - * $Id: xine.c,v 1.20 2001/05/28 21:47:43 f1rmb Exp $ + * $Id: xine.c,v 1.21 2001/06/03 18:08:56 guenter Exp $ * * top-level xine functions * @@ -89,15 +89,13 @@ void xine_stop (xine_t *this) { this->cur_input_plugin = NULL; } - this->video_fifo->clear(this->video_fifo); - this->audio_fifo->clear(this->audio_fifo); - this->spu_fifo->clear(this->spu_fifo); + video_decoder_stop (this); + audio_decoder_stop (this); - if (this->audio_out) - this->audio_out->close (this->audio_out); + this->spu_fifo->clear(this->spu_fifo); - this->metronom->reset(this->metronom); this->metronom->stop_clock (this->metronom); + this->metronom->reset(this->metronom); pthread_mutex_unlock (&this->xine_lock); } @@ -316,28 +314,25 @@ int xine_eject (xine_t *this) { void xine_exit (xine_t *this) { /* - void *p; - buf_element_t *buf; - */ - /* * stop decoder threads */ - printf ("xine.c : xine_exit FIXME - not implemented\n"); - - /* - if (this->cur_input_plugin) - this->cur_input_plugin->demux_stop (); + if(this->cur_demuxer_plugin) { + this->cur_demuxer_plugin->stop (this->cur_demuxer_plugin); + this->cur_demuxer_plugin = NULL; + } - this->fifo_funcs->fifo_buffer_clear(this->spu_fifo); + if(this->cur_input_plugin) { + this->cur_input_plugin->close(this->cur_input_plugin); + this->cur_input_plugin = NULL; + } - audio_decoder_shutdown (); - video_decoder_shutdown (); + audio_decoder_shutdown (this); + video_decoder_shutdown (this); this->status = XINE_QUIT; - config_file_save (); - */ + this->config->save (this->config); } /* |