# File lib/guard.rb, line 320
    def within_preserved_state
      lock.synchronize do
        begin
          interactor.stop if interactor
          @result = yield
        rescue Interrupt
        end

        interactor.start if interactor
      end
      @result
    end