diff --git a/Library/Homebrew/brewkit.rb b/Library/Homebrew/brewkit.rb index 78b190d7bd..9cfc999af3 100644 --- a/Library/Homebrew/brewkit.rb +++ b/Library/Homebrew/brewkit.rb @@ -116,13 +116,10 @@ ENV.extend HomebrewEnvExtension def inreplace(path, before, after) before=Regexp.escape before.to_s - after=Regexp.escape after.to_s - before.gsub! "/", "\\\/" - after.gsub! "/", "\\\/" - before.gsub! "'", '\'' - after.gsub! "'", '\'' + after.gsub! "\\", "\\\\" + after.gsub! "/", "\\/" # TODO this sucks # either use 'ed', or allow regexp and use a proper ruby function - `perl -pi -e $'s/#{before}/#{after}/g' "#{path}"` + Kernel.system "perl", "-pi", "-e", "s/#{before}/#{after}/g", path end