+#ifdef NCURSES_WGETCH_EVENTS
+ if (evl
+#if USE_GPM_SUPPORT || defined(USE_EMX_MOUSE)
+ || (SP->_mouse_fd >= 0)
+#endif
+ ) {
+ mask = _nc_timed_wait(TWAIT_MASK, -1, (int *) 0, evl);
+ } else
+ mask = 0;
+
+ if (mask & 4) {
+ T(("fifo_push: ungetch KEY_EVENT"));
+ ungetch(KEY_EVENT);
+ return KEY_EVENT;
+ }
+#elif USE_GPM_SUPPORT || defined(USE_EMX_MOUSE)
+ if (SP->_mouse_fd >= 0)
+ mask = _nc_timed_wait(TWAIT_MASK, -1, (int *) 0 EVENTLIST_2nd(evl));
+#endif
+