diff --git a/lib/redmine/scm/adapters/abstract_adapter.rb b/lib/redmine/scm/adapters/abstract_adapter.rb
index a3ca61e..8c3006b 100644
--- a/lib/redmine/scm/adapters/abstract_adapter.rb
+++ b/lib/redmine/scm/adapters/abstract_adapter.rb
@@ -190,7 +190,10 @@ module Redmine
           begin
             IO.popen(cmd, "r+") do |io|
               io.close_write
-              block.call(io) if block_given?
+              if block_given?
+                block.call(io)
+                while(io.gets); end
+              end
             end
           rescue Errno::ENOENT => e
             msg = strip_credential(e.message)
