From 776c08490fdc6451e8c53e33cd22756d4f0477ed Mon Sep 17 00:00:00 2001 From: Simon Sigurdhsson Date: Tue, 11 Jun 2013 22:13:39 +0200 Subject: [PATCH] Fix bug in `brew list --pinned` Pinned formulae which were pinned at a previous version but then upgraded would not be listed by `brew list --pinned`. This is due to the good old "File.exist? thinks broken symlinks don't exist" gotcha, so the test in the select block in list_pinned has been changed to check if the pin file exists _or_ is a symlink. Closes Homebrew/homebrew#20423. Signed-off-by: Jack Nagel --- Library/Homebrew/cmd/list.rb | 3 ++- 1 file changed, 2 insertions(+), 1 deletion(-) diff --git a/Library/Homebrew/cmd/list.rb b/Library/Homebrew/cmd/list.rb index c40246a811..9299260de8 100644 --- a/Library/Homebrew/cmd/list.rb +++ b/Library/Homebrew/cmd/list.rb @@ -58,7 +58,8 @@ module Homebrew extend self else ARGV.named.map{ |n| HOMEBREW_CELLAR+n }.select{ |pn| pn.exist? } end.select do |d| - (HOMEBREW_LIBRARY/"PinnedKegs"/d.basename.to_s).exist? + keg_pin = (HOMEBREW_LIBRARY/"PinnedKegs"/d.basename.to_s) + keg_pin.exist? or keg_pin.symlink? end.each do |d| puts d.basename end