lib/connection/utils.rb in stomp-1.2.7 vs lib/connection/utils.rb in stomp-1.2.8

- old
+ new

@@ -81,12 +81,15 @@ _validate_hbheader() end # _post_connect handles low level logic just after a physical connect. def _post_connect() - return unless (@connect_headers[:"accept-version"] && @connect_headers[:host]) - return if @connection_frame.command == Stomp::CMD_ERROR + return unless (@connect_headers[:"accept-version"] && @connect_headers[:host]) # 1.0 + if @connection_frame.command == Stomp::CMD_ERROR + @connection_frame.headers = _decodeHeaders(@connection_frame.headers) + return + end # We are CONNECTed cfh = @connection_frame.headers.symbolize_keys @protocol = cfh[:version] if @protocol # Should not happen, but check anyway @@ -107,11 +110,11 @@ used_socket = nil if closed? while used_socket.nil? || !@failure.nil? @failure = nil begin - used_socket = open_socket() + used_socket = open_socket() # sets @closed = false if OK # Open is complete connect(used_socket) if @logger && @logger.respond_to?(:on_connected) @logger.on_connected(log_params) end @@ -213,17 +216,17 @@ # __old_receive receives a frame, blocks until the frame is received. def __old_receive() # The receive may fail so we may need to retry. while TRUE begin - used_socket = socket + used_socket = socket() return _receive(used_socket) rescue @failure = $! raise unless @reliable errstr = "receive failed: #{$!}" if @logger && @logger.respond_to?(:on_miscerr) - @logger.on_miscerr(log_params, errstr) + @logger.on_miscerr(log_params, "es_oldrecv: " + errstr) else $stderr.print errstr end end end