From 34f838685bf7d99968ba6e1c645bd1dc2d2db4a1 Mon Sep 17 00:00:00 2001 From: Toshi MARUYAMA Date: Sun, 10 Jul 2011 21:47:30 +0000 Subject: [PATCH] scm: catch all exceptions at adapter shellout() to fork scm command (#8510, #6713, #4725, #5404). If scm command does not exist, Linux JRuby 1.6.2 (ruby-1.8.7-p330) raises java.io.IOException in production environment. git-svn-id: svn+ssh://rubyforge.org/var/svn/redmine/trunk@6230 e93f8b46-1217-0410-a6f0-8f06a7374b81 --- lib/redmine/scm/adapters/abstract_adapter.rb | 6 +++++- 1 file changed, 5 insertions(+), 1 deletion(-) diff --git a/lib/redmine/scm/adapters/abstract_adapter.rb b/lib/redmine/scm/adapters/abstract_adapter.rb index 2e72ba14d..29b401a81 100644 --- a/lib/redmine/scm/adapters/abstract_adapter.rb +++ b/lib/redmine/scm/adapters/abstract_adapter.rb @@ -224,7 +224,11 @@ module Redmine io.close_write block.call(io) if block_given? end - rescue Errno::ENOENT => e + ## If scm command does not exist, + ## Linux JRuby 1.6.2 (ruby-1.8.7-p330) raises java.io.IOException + ## in production environment. + # rescue Errno::ENOENT => e + rescue Exception => e msg = strip_credential(e.message) # The command failed, log it and re-raise logmsg = "SCM command failed, "