Re: [Kaffeine-devel] dvb channel change race hangs and a patch
Brought to you by:
hftom,
lasselindqvist
From: Mario R. <mar...@go...> - 2007-11-26 21:25:05
|
Jani Jaakkola wrote: > The latest svn version of kaffeine sometimes hangs when changing > dvb channels. This seems to be because of racy use of QThread::terminate() > in the dvb code. I patched the dvbout thread to use nonblocking IO when > writing to the dvb fifo, which means that the thread will always terminate > cleanly when requested. So QThread::terminate() is not needed anymore. I > also somewhat simplified the code and got rid of some unneeded state in > dvbout-class. I agree. I'm so happy someone else is saying it. I've had a similar issue (kaffeine freezing) when stopping the DVB channels search. http://sourceforge.net/mailarchive/message.php?msg_id=53d94280611291407n1286a2fau671386c68adffdfa%40mail.gmail.com I did not get much from the mailing list. I attach what is the same patch I sent a while ago to remove all QThread::terminate() from DVBsi and replace it with a cooperative way of asking a thread to terminate. > > The attached patch is also available from: > http://www.cs.helsinki.fi/u/jjaakkol/tmp/kaffeine-dvb.patch > > Thanks for kaffeine! > > - Jani I will try immediately. Cheers |