From 4073505065a0937d67c45860988fbe634a700c37 Mon Sep 17 00:00:00 2001 From: Jon Rowe Date: Thu, 15 Mar 2012 12:21:20 +0000 Subject: escape commas in paths before globbing to avoid infinite hang in Dir[] --- activesupport/lib/active_support/file_update_checker.rb | 6 +++++- 1 file changed, 5 insertions(+), 1 deletion(-) (limited to 'activesupport/lib/active_support/file_update_checker.rb') diff --git a/activesupport/lib/active_support/file_update_checker.rb b/activesupport/lib/active_support/file_update_checker.rb index 2ede084e95..3ff249536e 100644 --- a/activesupport/lib/active_support/file_update_checker.rb +++ b/activesupport/lib/active_support/file_update_checker.rb @@ -106,11 +106,15 @@ module ActiveSupport globs = [] hash.each do |key, value| - globs << "#{key}/**/*#{compile_ext(value)}" + globs << "#{escape(key)}/**/*#{compile_ext(value)}" end "{#{globs.join(",")}}" end + def escape(key) + key.gsub(',','\,') + end + def compile_ext(array) #:nodoc: array = Array(array) return if array.empty? -- cgit v1.2.3