diff --git a/Library/Homebrew/extend/fileutils.rb b/Library/Homebrew/extend/fileutils.rb index 76e9b610eb358abba2f66dd3d9f94c65e5a7ca7c..aa1735cb1dc048b746b5362902046b52ce46f13e 100644 --- a/Library/Homebrew/extend/fileutils.rb +++ b/Library/Homebrew/extend/fileutils.rb @@ -14,14 +14,17 @@ module FileUtils # /tmp volume to the other volume. So we let the user override the tmp # prefix if they need to. - tempd = with_system_path { `mktemp -d #{HOMEBREW_TEMP}/#{prefix}-XXXXXX` }.chuzzle - raise "Failed to create sandbox" if tempd.nil? + tempd = with_system_path { `mktemp -d #{HOMEBREW_TEMP}/#{prefix}-XXXXXX` }.strip + raise "Failed to create sandbox" if tempd.empty? prevd = pwd - cd tempd - yield - ensure - cd prevd if prevd - ignore_interrupts{ rm_r tempd } if tempd + cd(tempd) + + begin + yield + ensure + cd(prevd) + ignore_interrupts { rm_r(tempd) } + end end module_function :mktemp