/****************************************************************************
- * Copyright (c) 1998-2011,2012 Free Software Foundation, Inc. *
+ * Copyright (c) 1998-2014,2015 Free Software Foundation, Inc. *
* *
* Permission is hereby granted, free of charge, to any person obtaining a *
* copy of this software and associated documentation files (the *
#endif
#undef CUR
-MODULE_ID("$Id: lib_twait.c,v 1.64 2012/02/18 20:32:55 tom Exp $")
+MODULE_ID("$Id: lib_twait.c,v 1.69 2015/05/02 22:23:16 tom Exp $")
static long
_nc_gettime(TimeType * t0, int first)
if (first) {
*t0 = t1;
}
- res = (t1 - *t0) * 1000;
+ res = (long) ((t1 - *t0) * 1000);
#endif
TR(TRACE_IEVENT, ("%s time: %ld msec", first ? "get" : "elapsed", res));
return res;
_nc_event *ev = evl->events[n];
if (ev->type == _NC_EVENT_TIMEOUT_MSEC) {
- event_delay = ev->data.timeout_msec;
+ event_delay = (int) ev->data.timeout_msec;
if (event_delay < 0)
event_delay = INT_MAX; /* FIXME Is this defined? */
}
memset(fd_list, 0, sizeof(fd_list));
#ifdef NCURSES_WGETCH_EVENTS
- if ((mode & TW_EVENT) && evl)
+ if ((mode & TW_EVENT) && evl) {
fds = typeMalloc(struct pollfd, MIN_FDS + evl->count);
+ if (fds == 0)
+ return TW_NONE;
+ }
#endif
if (mode & TW_INPUT) {
}
}
}
-
- if (fds != fd_list)
- free((char *) fds);
-
#endif
#elif defined(__BEOS__)
result |= TW_EVENT;
#endif
+#if USE_FUNC_POLL
+#ifdef NCURSES_WGETCH_EVENTS
+ if (fds != fd_list)
+ free((char *) fds);
+#endif
+#endif
+
return (result);
}