Skip to content

Commit

Permalink
If running a task for a guard and it borks, don't swallow the error b…
Browse files Browse the repository at this point in the history
…ut print the backtrace
  • Loading branch information
mcmire committed Jun 18, 2011
1 parent d51b457 commit b41f31e
Showing 1 changed file with 5 additions and 3 deletions.
8 changes: 5 additions & 3 deletions lib/guard.rb
Expand Up @@ -59,11 +59,13 @@ def run_on_change_for_all_guards(files)
# fire it if his work leads to a system failure
def supervised_task(guard, task_to_supervise, *args)
guard.send(task_to_supervise, *args)
rescue Exception
UI.error("#{guard.class.name} guard failed to achieve its <#{task_to_supervise.to_s}> command: #{$!}")
rescue Exception => err
UI.error("#{guard.class.name} guard failed to achieve its <#{task_to_supervise.to_s}> command: #{err}")
warn "#{err.class}: #{err.message}"
warn err.backtrace.join("\n")
guards.delete guard
UI.info("Guard #{guard.class.name} has just been fired")
return $!
return err
end

def run
Expand Down

0 comments on commit b41f31e

Please sign in to comment.