summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--ChangeLog6
-rw-r--r--thread.c4
2 files changed, 8 insertions, 2 deletions
diff --git a/ChangeLog b/ChangeLog
index 17c0a285a2..2eee3cd6af 100644
--- a/ChangeLog
+++ b/ChangeLog
@@ -1,3 +1,9 @@
+Thu Aug 8 19:58:02 2013 Koichi Sasada <ko1@atdot.net>
+
+ * thread.c (rb_threadptr_pending_interrupt_check_mask):
+ use RARRAY_RAWPTR() instead of RARRAY_PTR() because
+ there is no new reference.
+
Thu Aug 8 19:56:52 2013 Koichi Sasada <ko1@atdot.net>
* string.c (rb_str_format_m): use RARRAY_RAWPTR() instead of
diff --git a/thread.c b/thread.c
index 599bf594c9..4b5dd7ed8a 100644
--- a/thread.c
+++ b/thread.c
@@ -1549,10 +1549,10 @@ rb_threadptr_pending_interrupt_check_mask(rb_thread_t *th, VALUE err)
{
VALUE mask;
long mask_stack_len = RARRAY_LEN(th->pending_interrupt_mask_stack);
- VALUE *mask_stack = RARRAY_PTR(th->pending_interrupt_mask_stack);
+ const VALUE *mask_stack = RARRAY_RAWPTR(th->pending_interrupt_mask_stack);
VALUE ancestors = rb_mod_ancestors(err); /* TODO: GC guard */
long ancestors_len = RARRAY_LEN(ancestors);
- VALUE *ancestors_ptr = RARRAY_PTR(ancestors);
+ const VALUE *ancestors_ptr = RARRAY_RAWPTR(ancestors);
int i, j;
for (i=0; i<mask_stack_len; i++) {