about summary refs log tree commit homepage
path: root/ext/sleepy_penguin/eventfd.c
diff options
context:
space:
mode:
authorEric Wong <e@yhbt.net>2011-03-05 23:20:01 +0000
committerEric Wong <normalperson@yhbt.net>2011-03-05 23:39:45 +0000
commita1cd49832cf8273ad17f106a40c61a572f9e3bd5 (patch)
tree867f6dd869ba8b793b66d14dc7232b16e984ce98 /ext/sleepy_penguin/eventfd.c
parentfd32ba797d5a3b2d404c46fd1ed89f20fc540dcc (diff)
downloadsleepy_penguin-a1cd49832cf8273ad17f106a40c61a572f9e3bd5.tar.gz
Oops :X
Diffstat (limited to 'ext/sleepy_penguin/eventfd.c')
-rw-r--r--ext/sleepy_penguin/eventfd.c7
1 files changed, 4 insertions, 3 deletions
diff --git a/ext/sleepy_penguin/eventfd.c b/ext/sleepy_penguin/eventfd.c
index 1a2792b..6c2f800 100644
--- a/ext/sleepy_penguin/eventfd.c
+++ b/ext/sleepy_penguin/eventfd.c
@@ -37,7 +37,7 @@ struct efd_args {
 static VALUE efd_write(void *_args)
 {
         struct efd_args *args = _args;
-        ssize_t w = write(args->fd, &args->buf, sizeof(uint64_t));
+        ssize_t w = write(args->fd, &args->val, sizeof(uint64_t));
 
         return (VALUE)w;
 }
@@ -45,7 +45,7 @@ static VALUE efd_write(void *_args)
 static VALUE efd_read(void *_args)
 {
         struct efd_args *args = _args;
-        ssize_t r = read(args->fd, &args->buf, sizeof(uint64_t));
+        ssize_t r = read(args->fd, &args->val, sizeof(uint64_t));
 
         return (VALUE)r;
 }
@@ -72,6 +72,7 @@ retry:
 static VALUE getvalue(VALUE self)
 {
         struct efd_args x;
+        ssize_t w;
 
         x.fd = my_fileno(self);
 
@@ -83,7 +84,7 @@ retry:
                 rb_sys_fail("read(eventfd)");
         }
 
-        return ULL2NUM(x.buf);
+        return ULL2NUM(x.val);
 }
 #else  /* !HAVE_RB_THREAD_BLOCKING_REGION */