diff --git a/ext/dl/cptr.c b/ext/dl/cptr.c index 0c85a91b6c..96f318be53 100644 --- a/ext/dl/cptr.c +++ b/ext/dl/cptr.c @@ -388,7 +388,7 @@ rb_dlptr_inspect(VALUE self) char str[1024]; TypedData_Get_Struct(self, struct ptr_data, &dlptr_data_type, data); - snprintf(str, 1023, "#<%s:%p ptr=%p size=%ld free=%p>", + snprintf(str, 1023, "#<%s:%p ptr=%#lx size=%ld free=%#lx>", rb_class2name(CLASS_OF(self)), data, data->ptr, data->size, data->free); return rb_str_new2(str); } diff --git a/test/dl/test_cptr.rb b/test/dl/test_cptr.rb index 2b40a16fb1..5bc98ef35b 100644 --- a/test/dl/test_cptr.rb +++ b/test/dl/test_cptr.rb @@ -59,8 +59,8 @@ module DL ptr = CPtr.new(0) inspect = ptr.inspect assert_match(/size=#{ptr.size}/, inspect) - assert_match(/free=#{ptr.free}/, inspect) - assert_match(/ptr=#{ptr.to_i}/, inspect) + assert_match(/free=#{sprintf("%#x", ptr.free.to_i)}/, inspect) + assert_match(/ptr=#{sprintf("%#x", ptr.to_i)}/, inspect) end def test_to_ptr_string