diff --git a/lib/httpx/callbacks.rb b/lib/httpx/callbacks.rb index cb91d229..0939acf9 100644 --- a/lib/httpx/callbacks.rb +++ b/lib/httpx/callbacks.rb @@ -22,12 +22,12 @@ module HTTPX callbacks(type).delete_if { |pr| :delete == pr.call(*args) } # rubocop:disable Style/YodaCondition end - protected - def callbacks_for?(type) - @callbacks.key?(type) && !@callbacks[type].empty? + @callbacks.key?(type) && @callbacks[type].any? end + protected + def callbacks(type = nil) return @callbacks unless type diff --git a/lib/httpx/connection.rb b/lib/httpx/connection.rb index 0739aa41..7b717d75 100644 --- a/lib/httpx/connection.rb +++ b/lib/httpx/connection.rb @@ -538,7 +538,7 @@ module HTTPX # connect errors, exit gracefully error = ConnectionError.new(e.message) error.set_backtrace(e.backtrace) - connecting? && callbacks(:connect_error).any? ? emit(:connect_error, error) : handle_error(error) + connecting? && callbacks_for?(:connect_error) ? emit(:connect_error, error) : handle_error(error) @state = :closed emit(:close) rescue TLSError => e