# File lib/listen/directory_record.rb, line 172
    def fetch_changes(directories, options = {})
      @changes    = { :modified => [], :added => [], :removed => [] }
      directories = directories.sort_by { |el| el.length }.reverse # diff sub-dir first

      directories.each do |directory|
        next unless directory[@directory] # Path is or inside directory

        detect_modifications_and_removals(directory, options)
        detect_additions(directory, options)
      end

      @changes
    end