summaryrefslogtreecommitdiff
path: root/legacy/emotion/src/modules/xine/emotion_xine.c
diff options
context:
space:
mode:
authorGustavo Sverzut Barbieri <barbieri@gmail.com>2008-09-26 23:17:57 +0000
committerGustavo Sverzut Barbieri <barbieri@gmail.com>2008-09-26 23:17:57 +0000
commitaa3aac7dbfd67d5184d41fa73b581df337bcc7ef (patch)
treec7a2a65a01bb4fdb05b6c0d2b4e4e9a173baa716 /legacy/emotion/src/modules/xine/emotion_xine.c
parent2acd11a39ec554ef390bb840175a11e108732379 (diff)
Fix position reporting.
Always call pos_get() and also fix these on xine and gstreamer, we should query the current position and do not trust cached value. For instance, when no video is present, no handoff/frame-decoded is called so no cache is updated. SVN revision: 36271
Diffstat (limited to 'legacy/emotion/src/modules/xine/emotion_xine.c')
-rw-r--r--legacy/emotion/src/modules/xine/emotion_xine.c2
1 files changed, 2 insertions, 0 deletions
diff --git a/legacy/emotion/src/modules/xine/emotion_xine.c b/legacy/emotion/src/modules/xine/emotion_xine.c
index 9f902757b0..e1e457689f 100644
--- a/legacy/emotion/src/modules/xine/emotion_xine.c
+++ b/legacy/emotion/src/modules/xine/emotion_xine.c
@@ -551,6 +551,7 @@ em_pos_get(void *ef)
551 Emotion_Xine_Video *ev; 551 Emotion_Xine_Video *ev;
552 552
553 ev = (Emotion_Xine_Video *)ef; 553 ev = (Emotion_Xine_Video *)ef;
554 _em_get_pos_len(ev);
554 return ev->pos; 555 return ev->pos;
555} 556}
556 557
@@ -1456,6 +1457,7 @@ _em_get_pos_len_th(void *par)
1456static void 1457static void
1457_em_get_pos_len(Emotion_Xine_Video *ev) 1458_em_get_pos_len(Emotion_Xine_Video *ev)
1458{ 1459{
1460 if (!ev->play_ok) return;
1459 if (ev->get_poslen) return; 1461 if (ev->get_poslen) return;
1460 ev->get_poslen = 1; 1462 ev->get_poslen = 1;
1461 pthread_mutex_lock(&(ev->get_pos_len_mutex)); 1463 pthread_mutex_lock(&(ev->get_pos_len_mutex));