mirror of
https://github.com/juce-framework/JUCE.git
synced 2026-01-10 23:44:24 +00:00
tweak to avoid deadlocks in wavelab
This commit is contained in:
parent
9fc74e09a8
commit
46c2f0d252
1 changed files with 11 additions and 7 deletions
|
|
@ -847,18 +847,22 @@ public:
|
||||||
|
|
||||||
void doIdleCallback()
|
void doIdleCallback()
|
||||||
{
|
{
|
||||||
if (! recursionCheck)
|
// (wavelab calls this on a separate thread and causes a deadlock)..
|
||||||
|
if (MessageManager::getInstance()->isThisTheMessageThread())
|
||||||
{
|
{
|
||||||
const MessageManagerLock mml;
|
if (! recursionCheck)
|
||||||
|
{
|
||||||
|
const MessageManagerLock mml;
|
||||||
|
|
||||||
recursionCheck = true;
|
recursionCheck = true;
|
||||||
|
|
||||||
juce_callAnyTimersSynchronously();
|
juce_callAnyTimersSynchronously();
|
||||||
|
|
||||||
for (int i = ComponentPeer::getNumPeers(); --i >= 0;)
|
for (int i = ComponentPeer::getNumPeers(); --i >= 0;)
|
||||||
ComponentPeer::getPeer (i)->performAnyPendingRepaintsNow();
|
ComponentPeer::getPeer (i)->performAnyPendingRepaintsNow();
|
||||||
|
|
||||||
recursionCheck = false;
|
recursionCheck = false;
|
||||||
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
|
||||||
Loading…
Add table
Add a link
Reference in a new issue