Revision: 5989
Author: iratqq
Date: Fri Aug 28 05:31:29 2009
Log: * uim/fileio.c (c_file_poll):
  - Don't use return value of poll(2).
    Return value is non zero'ed value of fds.revents.

http://code.google.com/p/uim/source/detail?r=5989

Modified:
 /trunk/uim/fileio.c

=======================================
--- /trunk/uim/fileio.c Mon Mar  2 10:26:02 2009
+++ /trunk/uim/fileio.c Fri Aug 28 05:31:29 2009
@@ -287,8 +287,11 @@
     return uim_scm_null();

   ret_ = uim_scm_null();
-  for (i = 0; i < ret; i++)
-    ret_ = CONS(CONS(MAKE_INT(fds[i].fd), MAKE_INT(fds[i].revents)), ret_);
+
+  for (i = 0; i < nfds; i++)
+    if (fds[i].revents != 0)
+ ret_ = CONS(CONS(MAKE_INT(fds[i].fd), MAKE_INT(fds[i].revents)), ret_);
+
   free(fds);
   return uim_scm_callf("reverse", "o", ret_);
 }

Reply via email to