[ruby/tmpdir] Reject empty parent path

https://github.com/ruby/tmpdir/commit/628c5bdc59
This commit is contained in:
Nobuyoshi Nakada 2022-10-25 16:44:08 +09:00 committed by git
parent 3231ac6008
commit a79907ed5e
2 changed files with 11 additions and 1 deletions

View File

@ -148,7 +148,11 @@ class Dir
# Generates and yields random names to create a temporary name
def create(basename, tmpdir=nil, max_try: nil, **opts)
origdir = tmpdir
tmpdir ||= tmpdir()
if tmpdir
raise ArgumentError, "empty parent path" if tmpdir.empty?
else
tmpdir = tmpdir()
end
n = nil
prefix, suffix = basename
prefix = (String.try_convert(prefix) or

View File

@ -104,6 +104,12 @@ class TestTmpdir < Test::Unit::TestCase
end
end
def test_mktmpdir_not_empty_parent
assert_raise(ArgumentError) do
Dir.mktmpdir("foo", "")
end
end
def assert_mktmpdir_traversal
Dir.mktmpdir do |target|
target = target.chomp('/') + '/'