- if (fe->mask & mask & AE_WRITABLE && fe->wfileProc != fe->rfileProc)
- fe->wfileProc(eventLoop,fd,fe->clientData,mask);
- if (fe->mask & mask & AE_EXCEPTION &&
- fe->efileProc != fe->wfileProc &&
- fe->efileProc != fe->rfileProc)
- fe->efileProc(eventLoop,fd,fe->clientData,mask);
+ }
+ if (fe->mask & mask & AE_WRITABLE) {
+ if (!rfired || fe->wfileProc != fe->rfileProc)
+ fe->wfileProc(eventLoop,fd,fe->clientData,mask);
+ }