We read every piece of feedback, and take your input very seriously.
To see all available qualifiers, see our documentation.
1 parent b36406e commit 269d380Copy full SHA for 269d380
1 file changed
adapter/syscall/ff_socket_ops.c
@@ -308,9 +308,18 @@ ff_sys_epoll_wait(struct ff_epoll_wait_args *args)
308
309
#ifdef FF_PRELOAD_POLLING_MODE
310
/*
311
- * We set sem_flag 1, when set sc->status = FF_SC_REP, set sem_flag 0.
+ * If an event is generated or error occurs, user app epoll_wait return imme.
312
*/
313
- sem_flag = 1;
+ if (ret != 0) {
314
+ sem_flag = 1;
315
+ } else {
316
+ if (args->timeout < 0) {
317
+ /* -1 : Block user app until an event or error occurs. */
318
+ sem_flag = 0;
319
320
321
+ }
322
323
#else
324
325
* If timeout is 0, and no event triggered,
0 commit comments