replace_text_in_files: Regex match is greedy
The regex matches the longest possible string. Order does not matter.
This commit is contained in:
		
							parent
							
								
									29429df9da
								
							
						
					
					
						commit
						175c2e9303
					
				@ -68,17 +68,7 @@ class Keg
 | 
				
			|||||||
        relocation.old_cellar => relocation.new_cellar,
 | 
					        relocation.old_cellar => relocation.new_cellar,
 | 
				
			||||||
        relocation.old_repository => relocation.new_repository,
 | 
					        relocation.old_repository => relocation.new_repository,
 | 
				
			||||||
      }
 | 
					      }
 | 
				
			||||||
 | 
					      changed = s.gsub!(Regexp.union(replacements.keys), replacements)
 | 
				
			||||||
      # Order matters here since `HOMEBREW_CELLAR` and `HOMEBREW_REPOSITORY` are
 | 
					 | 
				
			||||||
      # children of `HOMEBREW_PREFIX` by default.
 | 
					 | 
				
			||||||
      regexp = Regexp.union(
 | 
					 | 
				
			||||||
        relocation.old_cellar,
 | 
					 | 
				
			||||||
        relocation.old_repository,
 | 
					 | 
				
			||||||
        relocation.old_prefix,
 | 
					 | 
				
			||||||
      )
 | 
					 | 
				
			||||||
 | 
					 | 
				
			||||||
      changed = s.gsub!(regexp, replacements)
 | 
					 | 
				
			||||||
 | 
					 | 
				
			||||||
      next unless changed
 | 
					      next unless changed
 | 
				
			||||||
      changed_files += [first, *rest].map { |file| file.relative_path_from(path) }
 | 
					      changed_files += [first, *rest].map { |file| file.relative_path_from(path) }
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
				
			|||||||
		Loading…
	
	
			
			x
			
			
		
	
		Reference in New Issue
	
	Block a user