summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--process.c4
-rw-r--r--test/ruby/test_process.rb4
2 files changed, 6 insertions, 2 deletions
diff --git a/process.c b/process.c
index f0ed4a4206..e4600f5c7c 100644
--- a/process.c
+++ b/process.c
@@ -4527,7 +4527,7 @@ rlimit_resource_type(VALUE rtype)
if (r != -1)
return r;
- rb_raise(rb_eArgError, "invalid resource name: %s", name);
+ rb_raise(rb_eArgError, "invalid resource name: %"PRIsVALUE, rtype);
UNREACHABLE;
}
@@ -4567,7 +4567,7 @@ rlimit_resource_value(VALUE rval)
#ifdef RLIM_SAVED_CUR
if (strcmp(name, "SAVED_CUR") == 0) return RLIM_SAVED_CUR;
#endif
- rb_raise(rb_eArgError, "invalid resource value: %s", name);
+ rb_raise(rb_eArgError, "invalid resource value: %"PRIsVALUE, rval);
UNREACHABLE;
}
diff --git a/test/ruby/test_process.rb b/test/ruby/test_process.rb
index 43c2f649b1..85303abe14 100644
--- a/test/ruby/test_process.rb
+++ b/test/ruby/test_process.rb
@@ -116,11 +116,15 @@ class TestProcess < Test::Unit::TestCase
}
assert_raise(ArgumentError) { Process.getrlimit(:FOO) }
assert_raise(ArgumentError) { Process.getrlimit("FOO") }
+ assert_raise_with_message(ArgumentError, /\u{30eb 30d3 30fc}/) { Process.getrlimit("\u{30eb 30d3 30fc}") }
end
def test_rlimit_value
return unless rlimit_exist?
+ assert_raise(ArgumentError) { Process.setrlimit(:FOO, 0) }
assert_raise(ArgumentError) { Process.setrlimit(:CORE, :FOO) }
+ assert_raise_with_message(ArgumentError, /\u{30eb 30d3 30fc}/) { Process.setrlimit("\u{30eb 30d3 30fc}", 0) }
+ assert_raise_with_message(ArgumentError, /\u{30eb 30d3 30fc}/) { Process.setrlimit(:CORE, "\u{30eb 30d3 30fc}") }
with_tmpchdir do
s = run_in_child(<<-'End')
cur, max = Process.getrlimit(:NOFILE)