From fb66de92176eb97c86a95cffd42e2b89cc1417a4 Mon Sep 17 00:00:00 2001 From: Andrew Weiss Date: Thu, 14 Sep 2017 15:07:52 -0700 Subject: [PATCH 1/2] nil guards in request_data_extractor --- lib/rollbar/request_data_extractor.rb | 10 ++++++---- 1 file changed, 6 insertions(+), 4 deletions(-) diff --git a/lib/rollbar/request_data_extractor.rb b/lib/rollbar/request_data_extractor.rb index 6364087b..0228851f 100644 --- a/lib/rollbar/request_data_extractor.rb +++ b/lib/rollbar/request_data_extractor.rb @@ -112,8 +112,10 @@ def rollbar_url(env) forwarded_proto = env['HTTP_X_FORWARDED_PROTO'] || env['rack.url_scheme'] || '' scheme = forwarded_proto.split(',').first - forwarded_host = env['HTTP_X_FORWARDED_HOST'] || env['HTTP_HOST'] || env['SERVER_NAME'] - host = forwarded_host && forwarded_host.split(',').first.strip + host = env['HTTP_X_FORWARDED_HOST'] || env['HTTP_HOST'] || env['SERVER_NAME'] || '' + if !host.empty? + host = host.split(',').first.strip + end path = env['ORIGINAL_FULLPATH'] || env['REQUEST_URI'] unless path.nil? || path.empty? @@ -121,8 +123,8 @@ def rollbar_url(env) end port = env['HTTP_X_FORWARDED_PORT'] - if port && !(scheme.downcase == 'http' && port.to_i == 80) && \ - !(scheme.downcase == 'https' && port.to_i == 443) && \ + if port && !(!scheme.nil? && scheme.downcase == 'http' && port.to_i == 80) && \ + !(!scheme.nil? && scheme.downcase == 'https' && port.to_i == 443) && \ !(host.include? ':') host = host + ':' + port end From cb537dadda7dca4fec27025bfa7f27c531b328c7 Mon Sep 17 00:00:00 2001 From: Andrew Weiss Date: Mon, 18 Sep 2017 15:35:35 -0700 Subject: [PATCH 2/2] fix style nits --- lib/rollbar/request_data_extractor.rb | 4 +--- 1 file changed, 1 insertion(+), 3 deletions(-) diff --git a/lib/rollbar/request_data_extractor.rb b/lib/rollbar/request_data_extractor.rb index 0228851f..2447df07 100644 --- a/lib/rollbar/request_data_extractor.rb +++ b/lib/rollbar/request_data_extractor.rb @@ -113,9 +113,7 @@ def rollbar_url(env) scheme = forwarded_proto.split(',').first host = env['HTTP_X_FORWARDED_HOST'] || env['HTTP_HOST'] || env['SERVER_NAME'] || '' - if !host.empty? - host = host.split(',').first.strip - end + host = host.split(',').first.strip unless host.empty? path = env['ORIGINAL_FULLPATH'] || env['REQUEST_URI'] unless path.nil? || path.empty?