summaryrefslogtreecommitdiff
path: root/thread.c
diff options
context:
space:
mode:
authornobu <nobu@b2dd03c8-39d4-4d8f-98ff-823fe69b080e>2012-07-06 03:46:39 +0000
committernobu <nobu@b2dd03c8-39d4-4d8f-98ff-823fe69b080e>2012-07-06 03:46:39 +0000
commit8a995a56c7ce9a5e7688e20fdfa101b206407ae1 (patch)
tree160528c14926441c4444e334d0017ae0198e92c6 /thread.c
parent1474cfa8464113fef696ef0f6e8b785fdfc5fc76 (diff)
thread.c: unsigned
* thread.c (rb_thread_shield_waiting_{inc,dec}): should be unsigned. int is large enough since ruby requires it to be 32bit at least. git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@36331 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
Diffstat (limited to 'thread.c')
-rw-r--r--thread.c6
1 files changed, 3 insertions, 3 deletions
diff --git a/thread.c b/thread.c
index 85ed88cadc..7de1dcaf82 100644
--- a/thread.c
+++ b/thread.c
@@ -3727,9 +3727,9 @@ thread_shield_alloc(VALUE klass)
static inline void
rb_thread_shield_waiting_inc(VALUE b)
{
- int w = rb_thread_shield_waiting(b);
+ unsigned int w = rb_thread_shield_waiting(b);
w++;
- if (w > (THREAD_SHIELD_WAITING_MASK>>THREAD_SHIELD_WAITING_SHIFT))
+ if (w > (unsigned int)(THREAD_SHIELD_WAITING_MASK>>THREAD_SHIELD_WAITING_SHIFT))
rb_raise(rb_eRuntimeError, "waiting count overflow");
RBASIC(b)->flags &= ~THREAD_SHIELD_WAITING_MASK;
RBASIC(b)->flags |= ((VALUE)w << THREAD_SHIELD_WAITING_SHIFT);
@@ -3738,7 +3738,7 @@ rb_thread_shield_waiting_inc(VALUE b)
static inline void
rb_thread_shield_waiting_dec(VALUE b)
{
- int w = rb_thread_shield_waiting(b);
+ unsigned int w = rb_thread_shield_waiting(b);
if (!w) rb_raise(rb_eRuntimeError, "waiting count underflow");
w--;
RBASIC(b)->flags &= ~THREAD_SHIELD_WAITING_MASK;