зеркало из https://github.com/mozilla/pjs.git
Follow-up to bug 540886: address review comments I forgot to before pushing.
--HG-- extra : transplant_source : a%25%DF%90g%8A%F0%5C%F7%9B%BEtX%13p9%3Fq%E8%E2
This commit is contained in:
Родитель
4c3fbfda9c
Коммит
4f3fa55836
|
@ -91,6 +91,7 @@ AsyncChannel::AsyncChannel(AsyncListener* aListener)
|
|||
mCvar(mMutex, "mozilla.ipc.AsyncChannel.mCvar"),
|
||||
mIOLoop(),
|
||||
mWorkerLoop(),
|
||||
mChild(false),
|
||||
mChannelErrorTask(NULL)
|
||||
{
|
||||
MOZ_COUNT_CTOR(AsyncChannel);
|
||||
|
|
|
@ -471,7 +471,7 @@ RPCChannel::BlockOnParent()
|
|||
NS_RUNTIMEABORT("attempt to block child when it's already blocked");
|
||||
|
||||
mBlockedOnParent = true;
|
||||
while (1) {
|
||||
do {
|
||||
// XXX this dispatch loop shares some similarities with the
|
||||
// one in Call(), but the logic is simpler and different
|
||||
// enough IMHO to warrant its own dispatch loop
|
||||
|
@ -501,12 +501,7 @@ RPCChannel::BlockOnParent()
|
|||
AsyncChannel::OnDispatchMessage(recvd);
|
||||
}
|
||||
}
|
||||
|
||||
// the last message, if async, may have been the one that
|
||||
// unblocks us
|
||||
if (!mBlockedOnParent)
|
||||
break;
|
||||
}
|
||||
} while (mBlockedOnParent);
|
||||
|
||||
EnqueuePendingMessages();
|
||||
}
|
||||
|
|
Загрузка…
Ссылка в новой задаче