Only write files if we actually made a change

This commit is contained in:
Jack Nagel 2014-03-27 21:42:09 -05:00
parent 4e918666d7
commit b25156ca4a

View File

@ -42,10 +42,13 @@ class Keg
files.group_by { |f| f.stat.ino }.each_value do |first, *rest|
s = first.open("rb", &:read)
s.gsub!(old_cellar, new_cellar)
s.gsub!(old_prefix, new_prefix)
first.atomic_write(s)
rest.each { |file| FileUtils.ln(first, file, :force => true) }
changed = s.gsub!(old_cellar, new_cellar)
changed = s.gsub!(old_prefix, new_prefix) || changed
if changed
first.atomic_write(s)
rest.each { |file| FileUtils.ln(first, file, :force => true) }
end
end
end