diff --git a/xpcom/io/nsPipe2.cpp b/xpcom/io/nsPipe2.cpp index 8fc5111a533..7d9463a2187 100644 --- a/xpcom/io/nsPipe2.cpp +++ b/xpcom/io/nsPipe2.cpp @@ -621,7 +621,7 @@ nsPipe::nsPipeOutputStream::WriteSegments(nsReadSegmentFun reader, if (NS_FAILED(rv)) goto done; if (writeBufLen == 0) { - if (*writeCount > 0) + if (*writeCount > 0 && !mBlocking) goto done; if (pipe->mObserver/* && *writeCount == 0*/) { mon.Exit(); // XXXbe avoid deadlock better