diff -r 56cd8111b7f7 -r 41300fa6a67c src/3rdparty/phonon/ds9/backend.cpp --- a/src/3rdparty/phonon/ds9/backend.cpp Tue Jan 26 12:42:25 2010 +0200 +++ b/src/3rdparty/phonon/ds9/backend.cpp Tue Feb 02 00:43:10 2010 +0200 @@ -41,6 +41,8 @@ { namespace DS9 { + QMutex *Backend::directShowMutex = 0; + bool Backend::AudioMoniker::operator==(const AudioMoniker &other) { return other->IsEqual(*this) == S_OK; @@ -50,6 +52,8 @@ Backend::Backend(QObject *parent, const QVariantList &) : QObject(parent) { + directShowMutex = &m_directShowMutex; + ::CoInitialize(0); //registering meta types @@ -62,11 +66,8 @@ m_audioOutputs.clear(); m_audioEffects.clear(); ::CoUninitialize(); - } - QMutex *Backend::directShowMutex() - { - return &qobject_cast(qt_plugin_instance())->m_directShowMutex; + directShowMutex = 0; } QObject *Backend::createObject(BackendInterface::Class c, QObject *parent, const QList &args)