@@ -12,11 +12,12 @@ class SessionManager
end
def promise_for(stanza, timeout: @timeout)
+ begin; raise Timeout, "Timeout"; rescue Timeout; timeout_exception = $!; end
id = "#{stanza.to.stripped}/#{stanza.public_send(@id_msg)}"
@sessions.fetch(id) do
@sessions[id] = EMPromise.new
EM.add_timer(timeout) do
- @sessions.delete(id)&.reject(Timeout.new)
+ @sessions.delete(id)&.reject(timeout_exception)
end
@sessions[id]
end