From faf06d5ef4fbba98817ca1f863a9cfe8440f7265 Mon Sep 17 00:00:00 2001 From: Miguel Freitas Date: Fri, 7 Mar 2003 15:29:30 +0000 Subject: workaround buggy pthread implementations with a timedwait (thanks Ewald) CVS patchset: 4358 CVS date: 2003/03/07 15:29:30 --- src/xine-engine/demux.c | 8 +++++++- 1 file changed, 7 insertions(+), 1 deletion(-) (limited to 'src/xine-engine/demux.c') diff --git a/src/xine-engine/demux.c b/src/xine-engine/demux.c index e2f7c671c..1edfac777 100644 --- a/src/xine-engine/demux.c +++ b/src/xine-engine/demux.c @@ -125,10 +125,16 @@ void xine_demux_control_headers_done (xine_stream_t *stream) { while ((stream->header_count_audioheader_count_videocounter_changed, &stream->counter_lock); + gettimeofday(&tv, NULL); + ts.tv_sec = tv.tv_sec + 1; + ts.tv_nsec = tv.tv_usec * 1000; + /* use timedwait to workaround buggy pthread broadcast implementations */ + pthread_cond_timedwait (&stream->counter_changed, &stream->counter_lock, &ts); } #ifdef LOG printf ("xine: headers processed.\n"); -- cgit v1.2.3