From 1bdabaa6b13344c195698ca5b0ced323cb93e2e1 Mon Sep 17 00:00:00 2001 From: Konstantin Papkovskiy Date: Tue, 15 Aug 2017 17:35:58 +0300 Subject: base64.rb: improve performance of Base64.urlsafe_encode64 * lib/base64.rb: avoid unnecessary memory allocations --- lib/base64.rb | 5 +++-- 1 file changed, 3 insertions(+), 2 deletions(-) diff --git a/lib/base64.rb b/lib/base64.rb index 24f0b02966..5c8df841f1 100644 --- a/lib/base64.rb +++ b/lib/base64.rb @@ -81,8 +81,9 @@ module Base64 # Note that the result can still contain '='. # You can remove the padding by setting +padding+ as false. def urlsafe_encode64(bin, padding: true) - str = strict_encode64(bin).tr("+/", "-_") - str = str.delete("=") unless padding + str = strict_encode64(bin) + str.tr!("+/", "-_") + str.delete!("=") unless padding str end -- cgit v1.2.3