summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--shape.c4
1 files changed, 2 insertions, 2 deletions
diff --git a/shape.c b/shape.c
index 80d135b897..f21b9a4ece 100644
--- a/shape.c
+++ b/shape.c
@@ -514,8 +514,8 @@ rb_shape_flags_mask(void)
static VALUE
rb_shape_find_by_id(VALUE mod, VALUE id)
{
- shape_id_t shape_id = NUM2INT(id);
- if (shape_id < 0 || shape_id >= GET_VM()->next_shape_id) {
+ shape_id_t shape_id = NUM2UINT(id);
+ if (shape_id >= GET_VM()->next_shape_id) {
rb_raise(rb_eArgError, "Shape ID %d is out of bounds\n", shape_id);
}
return rb_shape_t_to_rb_cShape(rb_shape_get_shape_by_id(shape_id));