Enlightenment CVS committal Author : raster Project : e17 Module : libs/emotion
Dir : e17/libs/emotion/src/modules Modified Files: emotion_xine.c Log Message: grr - i'm trying to debug why xine locks up on closing/stopping/deleting a stream in elation but NOt in emotion when emotion_test shuts down. ok emotion_test: emotion_test dvd:// now once its played a bit of the dvd hit: q and it will quit destroy video objects then exit main loop and exit. now with elation: elation now put a dvd in the drive (or already have one) elation will detect this. now let it play a bit of the dvd, and hit "Escape" to eject the dvd (which will try delete thevideo object). elatiojn will get STUCK inside an emotion call whihc get stuckin the emotion_xine module call thsat gets stuck inside xine_stop(). now WHY. what is it about elation that triggers xine to go batty? =================================================================== RCS file: /cvsroot/enlightenment/e17/libs/emotion/src/modules/emotion_xine.c,v retrieving revision 1.6 retrieving revision 1.7 diff -u -3 -r1.6 -r1.7 --- emotion_xine.c 18 Jul 2004 08:25:45 -0000 1.6 +++ emotion_xine.c 19 Jul 2004 04:50:13 -0000 1.7 @@ -338,19 +338,29 @@ pthread_cond_broadcast(&(ev->get_pos_len_cond)); while (ev->seek_to); while (ev->get_poslen); - ecore_main_fd_handler_del(ev->fd_handler); - close(ev->fd_write); - close(ev->fd_read); - ecore_main_fd_handler_del(ev->fd_ev_handler); - close(ev->fd_ev_write); - close(ev->fd_ev_read); + printf("EX pause...\n"); +// xine_set_param(ev->stream, XINE_PARAM_SPEED, XINE_SPEED_PAUSE); + printf("EX stop\n"); xine_stop(ev->stream); + printf("EX close\n"); xine_close(ev->stream); + printf("EX dispose\n"); xine_dispose(ev->stream); + printf("EX dispose evq\n"); xine_event_dispose_queue(ev->queue); + printf("EX close video drv\n"); if (ev->video) xine_close_video_driver(decoder, ev->video); + printf("EX close audio drv\n"); if (ev->audio) xine_close_audio_driver(decoder, ev->audio); + printf("EX del timer\n"); if (ev->timer) ecore_timer_del(ev->timer); + printf("EX del fds\n"); + ecore_main_fd_handler_del(ev->fd_handler); + close(ev->fd_write); + close(ev->fd_read); + ecore_main_fd_handler_del(ev->fd_ev_handler); + close(ev->fd_ev_write); + close(ev->fd_ev_read); free(ev); } ------------------------------------------------------- This SF.Net email is sponsored by BEA Weblogic Workshop FREE Java Enterprise J2EE developer tools! Get your free copy of BEA WebLogic Workshop 8.1 today. http://ads.osdn.com/?ad_id=4721&alloc_id=10040&op=click _______________________________________________ enlightenment-cvs mailing list [EMAIL PROTECTED] https://lists.sourceforge.net/lists/listinfo/enlightenment-cvs