From 76e2d74769df6258fced3ed9761c2f0e849483f0 Mon Sep 17 00:00:00 2001 From: Anatolii Didukh Date: Tue, 29 Mar 2016 15:10:55 +0300 Subject: last slash check optimization --- lib/rack/static.rb | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/lib/rack/static.rb b/lib/rack/static.rb index 17f47649..f59a205d 100644 --- a/lib/rack/static.rb +++ b/lib/rack/static.rb @@ -99,7 +99,7 @@ module Rack end def add_index_root?(path) - @index && path =~ /\/$/ + @index && path.end_with?('/'.freeze) end def overwrite_file_path(path) -- cgit v1.2.3-24-ge0c7 From ba67b778d54b7213c0e7f1a9073885fe5117aeb2 Mon Sep 17 00:00:00 2001 From: Anatolii Didukh Date: Mon, 6 Jun 2016 19:50:05 +0300 Subject: replace first and last characters check --- lib/rack/media_type.rb | 2 +- lib/rack/multipart/parser.rb | 2 +- lib/rack/request.rb | 2 +- 3 files changed, 3 insertions(+), 3 deletions(-) diff --git a/lib/rack/media_type.rb b/lib/rack/media_type.rb index 7e6cd3a8..f9397453 100644 --- a/lib/rack/media_type.rb +++ b/lib/rack/media_type.rb @@ -31,7 +31,7 @@ module Rack private def strip_doublequotes(str) - (str[0] == ?" && str[-1] == ?") ? str[1..-2] : str + (str.start_with?('"') && str.end_with?('"')) ? str[1..-2] : str end end end diff --git a/lib/rack/multipart/parser.rb b/lib/rack/multipart/parser.rb index 74a7ee67..f661da10 100644 --- a/lib/rack/multipart/parser.rb +++ b/lib/rack/multipart/parser.rb @@ -345,7 +345,7 @@ module Rack k,v = param.split('=', 2) k.strip! v.strip! - v = v[1..-2] if v[0] == '"' && v[-1] == '"' + v = v[1..-2] if v.start_with?('"') && v.end_with?('"') encoding = Encoding.find v if k == CHARSET end end diff --git a/lib/rack/request.rb b/lib/rack/request.rb index 5bf3eb17..e2d2bb56 100644 --- a/lib/rack/request.rb +++ b/lib/rack/request.rb @@ -337,7 +337,7 @@ module Rack # Fix for Safari Ajax postings that always append \0 # form_vars.sub!(/\0\z/, '') # performance replacement: - form_vars.slice!(-1) if form_vars[-1] == ?\0 + form_vars.slice!(-1) if form_vars.end_with?("\0") set_header RACK_REQUEST_FORM_VARS, form_vars set_header RACK_REQUEST_FORM_HASH, parse_query(form_vars, '&') -- cgit v1.2.3-24-ge0c7