diff --git a/Library/Homebrew/keg.rb b/Library/Homebrew/keg.rb index 3d2d21d692..756b272885 100644 --- a/Library/Homebrew/keg.rb +++ b/Library/Homebrew/keg.rb @@ -357,7 +357,7 @@ class Keg end def installed_dependents - my_tab = Tab.for_keg(self) + tap = Tab.for_keg(self).source["tap"] Keg.all.select do |keg| tab = Tab.for_keg(keg) next if tab.runtime_dependencies.nil? # no dependency information saved. @@ -368,7 +368,7 @@ class Keg dep_formula = Formulary.factory(dep["full_name"]) next false unless dep_formula == to_formula rescue FormulaUnavailableError - next false unless my_tab["full_name"] = dep["full_name"] + next false unless "#{tap}/#{name}" == dep["full_name"] end dep["version"] == version.to_s diff --git a/Library/Homebrew/test/keg_test.rb b/Library/Homebrew/test/keg_test.rb index cf5f13a6c9..4fe7c6a3cf 100644 --- a/Library/Homebrew/test/keg_test.rb +++ b/Library/Homebrew/test/keg_test.rb @@ -360,9 +360,11 @@ class InstalledDependantsTests < LinkTestCase # from a file path or URL. def test_unknown_formula Formulary.unstub(:loader_for) - alter_tab { |t| t.source["tap"] = "some/tap" } - dependencies [{ "full_name" => "some/tap/bar", "version" => "1.0" }] - alter_tab { |t| t.source["path"] = nil } + alter_tab(@keg) do |t| + t.source["tap"] = "some/tap" + t.source["path"] = nil + end + dependencies [{ "full_name" => "some/tap/foo", "version" => "1.0" }] assert_equal [@dependent], @keg.installed_dependents assert_equal [[@keg], ["bar 1.0"]], Keg.find_some_installed_dependents([@keg]) end