# File lib/vendor/darwin/lib/rb-fsevent/fsevent.rb, line 36 def run @pipe = open_pipe @running = true # please note the use of IO::select() here, as it is used specifically to # preserve correct signal handling behavior in ruby 1.8. while @running && IO::select([@pipe], nil, nil, nil) if line = @pipe.readline modified_dir_paths = line.split(':').select { |dir| dir != "\n" } callback.call(modified_dir_paths) end end rescue Interrupt, IOError ensure stop end