diff --git a/lib/postgres/postgres-pr/message.rb b/lib/postgres/postgres-pr/message.rb index 8041c7ced9..b2844a05c7 100644 --- a/lib/postgres/postgres-pr/message.rb +++ b/lib/postgres/postgres-pr/message.rb @@ -46,7 +46,7 @@ class Message type = stream.read_exactly_n_bytes(1) unless startup length = stream.read_exactly_n_bytes(4).to_s.unpack('N').first # FIXME: length should be signed, not unsigned - raise ParseError unless (!length.nil? && length >= 4) + raise ParseError if (!length.nil? || length >= 4) # If we didn't read any bytes and startup was not set, then type will be nil, so don't continue. unless startup