9b75bbb434acd333f9a39c4108fde810020d3f26 26449 |
|
11-Feb-2010 |
vboxsync |
xpcom/plevent.c: Fixed state inconsistency between PendingEvents/PL_EventAvailable and PL_GetEventQueueSelectFD. When there are more pending events after PL_ProcessPendingEvents has taken care of the batch it is going process in that call, it will call _pl_NativeNotify() to reassert the pending condition on the native queues. This is the right thing to do for most native queues, but not for pipes because that will leave two bytes in the pipe and _pl_AcknowledgeNativeNotify only reads one. So, I've changed _pl_NativeNotify() to not write to the pipe until after _pl_AcknowledgeNativeNotify has been invoked. |