aboutsummaryrefslogtreecommitdiffstats
path: root/Library/Homebrew/resource.rb
diff options
context:
space:
mode:
Diffstat (limited to 'Library/Homebrew/resource.rb')
-rw-r--r--Library/Homebrew/resource.rb12
1 files changed, 6 insertions, 6 deletions
diff --git a/Library/Homebrew/resource.rb b/Library/Homebrew/resource.rb
index 573a7bcb1..218b75625 100644
--- a/Library/Homebrew/resource.rb
+++ b/Library/Homebrew/resource.rb
@@ -85,13 +85,13 @@ class Resource
# If block is given, yield to that block
# A target or a block must be given, but not both
def unpack(target=nil)
- mktemp(download_name) do
- downloader.stage
- if block_given?
+ if target
+ mkdir_p(target)
+ chdir(target) { downloader.stage }
+ elsif block_given?
+ mktemp(download_name) do
+ downloader.stage
yield self
- elsif target
- target = Pathname.new(target) unless target.is_a? Pathname
- target.install Dir['*']
end
end
end