summaryrefslogtreecommitdiff
path: root/thread.c
diff options
context:
space:
mode:
Diffstat (limited to 'thread.c')
-rw-r--r--thread.c7
1 files changed, 3 insertions, 4 deletions
diff --git a/thread.c b/thread.c
index 87535c2226..298d1c1ddb 100644
--- a/thread.c
+++ b/thread.c
@@ -1712,7 +1712,7 @@ rb_fd_init(volatile rb_fdset_t *fds)
void
rb_fd_term(rb_fdset_t *fds)
{
- if (fds->fdset) free(fds->fdset);
+ if (fds->fdset) xfree(fds->fdset);
fds->maxfd = 0;
fds->fdset = 0;
}
@@ -2129,7 +2129,7 @@ thgroup_s_alloc(VALUE klass)
VALUE group;
struct thgroup *data;
- group = Data_Make_Struct(klass, struct thgroup, 0, free, data);
+ group = Data_Make_Struct(klass, struct thgroup, 0, -1, data);
data->enclosed = 0;
data->group = group;
@@ -2668,8 +2668,7 @@ barrier_alloc(VALUE klass)
VALUE volatile obj;
rb_barrier_t *barrier;
- obj = Data_Make_Struct(klass, rb_barrier_t,
- barrier_mark, barrier_free, barrier);
+ obj = Data_Make_Struct(klass, rb_barrier_t, barrier_mark, barrier_free, barrier);
barrier->owner = GET_THREAD();
barrier->waiting = 0;
barrier->tail = &barrier->waiting;