Enlightenment CVS committal Author : raster Project : e17 Module : libs/emotion
Dir : e17/libs/emotion/src/modules Modified Files: emotion_xine.c Log Message: use mutex's right with cond's =================================================================== RCS file: /cvs/e/e17/libs/emotion/src/modules/emotion_xine.c,v retrieving revision 1.35 retrieving revision 1.36 diff -u -3 -r1.35 -r1.36 --- emotion_xine.c 19 Mar 2007 18:10:21 -0000 1.35 +++ emotion_xine.c 21 Mar 2007 20:20:45 -0000 1.36 @@ -140,7 +140,9 @@ if (!ev->get_pos_thread_deleted) { printf("closing get_pos thread, %p\n", ev); + pthread_mutex_lock(&(ev->get_pos_len_mutex)); pthread_cond_broadcast(&(ev->get_pos_len_cond)); + pthread_mutex_unlock(&(ev->get_pos_len_mutex)); while (ev->get_poslen); } printf("EX dispose %p\n", ev); @@ -1366,10 +1368,11 @@ ev = (Emotion_Xine_Video *)par; - pthread_mutex_lock(&(ev->get_pos_len_mutex)); for (;;) { + pthread_mutex_lock(&(ev->get_pos_len_mutex)); pthread_cond_wait(&(ev->get_pos_len_cond), &(ev->get_pos_len_mutex)); + pthread_mutex_unlock(&(ev->get_pos_len_mutex)); if (ev->get_poslen) { int pos_stream = 0; @@ -1408,7 +1411,9 @@ { if (ev->get_poslen) return; ev->get_poslen = 1; + pthread_mutex_lock(&(ev->get_pos_len_mutex)); pthread_cond_broadcast(&(ev->get_pos_len_cond)); + pthread_mutex_unlock(&(ev->get_pos_len_mutex)); } const static Emotion_Video_Module em_module = ------------------------------------------------------------------------- Take Surveys. Earn Cash. Influence the Future of IT Join SourceForge.net's Techsay panel and you'll get the chance to share your opinions on IT & business topics through brief surveys-and earn cash http://www.techsay.com/default.php?page=join.php&p=sourceforge&CID=DEVDEV _______________________________________________ enlightenment-cvs mailing list enlightenment-cvs@lists.sourceforge.net https://lists.sourceforge.net/lists/listinfo/enlightenment-cvs