[mythtv-firehose] mythtv/master commit: 4d1b1c0a5 by Gavin Hurlbut (Beirdo)
noreply at mythtv.org
Fri Jun 10 00:10:50 UTC 2011
Author: Gavin Hurlbut <ghurlbut at mythtv.org>
Change Date: 2011-06-09T17:05:16-07:00
Push Date: 2011/06/09 17:10:44 -0700
New Revision: 4d1b1c0a5b52289dbbd0f7984a32a9848d6b7fb3
Make a mutex be local to the function
This is to fix mythbackend --version hanging and not exiting. When I attached
gdb and did a backtrace, it was deadlocked trying to lock a mutex in the
QMutex dtor. Made no sense to me, but it traced back to something in the
libmythprotoserver.so lib. I went through there, and this was the only bare
QMutex in the place that would need destroying.
As this mutex is only visible to this one function where it is used, having it
as a static local should give the desired effect, and the system shutdown
won't hit it in the above case. I have theories as to why it is an issue, but
I don't quite get it... It could be Qt internals, or the fact that it's in
a shared lib, or...
Whatever. mythbackend --version now exits.
More information about the mythtv-firehose