aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
-rw-r--r--Library/Homebrew/cmd/doctor.rb2
-rw-r--r--Library/Homebrew/os/mac.rb16
-rw-r--r--Library/Homebrew/os/mac/xcode.rb2
-rw-r--r--Library/Homebrew/os/mac/xquartz.rb2
4 files changed, 13 insertions, 9 deletions
diff --git a/Library/Homebrew/cmd/doctor.rb b/Library/Homebrew/cmd/doctor.rb
index 25ac8bbe4..84ab5c113 100644
--- a/Library/Homebrew/cmd/doctor.rb
+++ b/Library/Homebrew/cmd/doctor.rb
@@ -438,7 +438,7 @@ end
def check_xcode_select_path
if not MacOS::CLT.installed? and not File.file? "#{MacOS::Xcode.folder}/usr/bin/xcodebuild"
- path = MacOS.app_with_bundle_id(MacOS::Xcode::V4_BUNDLE_ID) || MacOS.app_with_bundle_id(MacOS::Xcode::V3_BUNDLE_ID)
+ path = MacOS.app_with_bundle_id(MacOS::Xcode::V4_BUNDLE_ID, MacOS::Xcode::V3_BUNDLE_ID)
path = '/Developer' if path.nil? or not path.directory?
<<-EOS.undent
Your Xcode is configured with an invalid path.
diff --git a/Library/Homebrew/os/mac.rb b/Library/Homebrew/os/mac.rb
index dc6d7093e..7fa95cd56 100644
--- a/Library/Homebrew/os/mac.rb
+++ b/Library/Homebrew/os/mac.rb
@@ -269,22 +269,26 @@ module OS
EOS
end
- def app_with_bundle_id id
- path = mdfind(id).first
+ def app_with_bundle_id(*ids)
+ path = mdfind(*ids).first
Pathname.new(path) unless path.nil? or path.empty?
end
- def mdfind id
+ def mdfind(*ids)
return [] unless OS.mac?
- (@mdfind ||= {}).fetch(id.to_s) do |key|
- @mdfind[key] = `/usr/bin/mdfind "kMDItemCFBundleIdentifier == '#{key}'"`.split("\n")
+ (@mdfind ||= {}).fetch(ids) do
+ @mdfind[ids] = `/usr/bin/mdfind "#{mdfind_query(*ids)}"`.split("\n")
end
end
- def pkgutil_info id
+ def pkgutil_info(id)
(@pkginfo ||= {}).fetch(id.to_s) do |key|
@pkginfo[key] = `/usr/sbin/pkgutil --pkg-info "#{key}" 2>/dev/null`.strip
end
end
+
+ def mdfind_query(*ids)
+ ids.map! { |id| "kMDItemCFBundleIdentifier == #{id}" }.join(" || ")
+ end
end
end
diff --git a/Library/Homebrew/os/mac/xcode.rb b/Library/Homebrew/os/mac/xcode.rb
index b64fc6edb..d89aa8d26 100644
--- a/Library/Homebrew/os/mac/xcode.rb
+++ b/Library/Homebrew/os/mac/xcode.rb
@@ -70,7 +70,7 @@ module OS
# helper tools and installed Xcode in a non-conventional place, this
# is our only option. See: http://superuser.com/questions/390757
def bundle_path
- MacOS.app_with_bundle_id(V4_BUNDLE_ID) || MacOS.app_with_bundle_id(V3_BUNDLE_ID)
+ MacOS.app_with_bundle_id(V4_BUNDLE_ID, V3_BUNDLE_ID)
end
def installed?
diff --git a/Library/Homebrew/os/mac/xquartz.rb b/Library/Homebrew/os/mac/xquartz.rb
index f864720f9..9a2266c39 100644
--- a/Library/Homebrew/os/mac/xquartz.rb
+++ b/Library/Homebrew/os/mac/xquartz.rb
@@ -52,7 +52,7 @@ module OS
end
def bundle_path
- MacOS.app_with_bundle_id(FORGE_BUNDLE_ID) || MacOS.app_with_bundle_id(APPLE_BUNDLE_ID)
+ MacOS.app_with_bundle_id(FORGE_BUNDLE_ID, APPLE_BUNDLE_ID)
end
def version_from_mdls(path)