diff --git a/lib/vagrant/action/builtin/wait_for_communicator.rb b/lib/vagrant/action/builtin/wait_for_communicator.rb index fe1e59818..c30127659 100644 --- a/lib/vagrant/action/builtin/wait_for_communicator.rb +++ b/lib/vagrant/action/builtin/wait_for_communicator.rb @@ -56,6 +56,10 @@ module Vagrant return if env[:interrupted] end + # Join so that they can raise exceptions if there were any + ready_thr.join if !ready_thr.alive? + states_thr.join if !states_thr.alive? + # If it went into a bad state, then raise an error if !states_thr[:result] raise Errors::VMBootBadState,