Google OAuth2 logins fail with Error 500 due to attempts to modify frozen String

https://sentry.gitlap.com/gitlab/gitlabcom/issues/45965/

RuntimeError: can't modify frozen String
  lib/gitlab/utils.rb:14:in `force_encoding'
    str.force_encoding(Encoding::UTF_8)
  lib/gitlab/utils.rb:14:in `force_utf8'
    str.force_encoding(Encoding::UTF_8)
  lib/gitlab/o_auth/auth_hash.rb:18:in `provider'
    @provider ||= Gitlab::Utils.force_utf8(auth_hash.provider.to_s)
  lib/gitlab/o_auth/user.rb:152:in `find_by_uid_and_provider'
    identity = Identity.find_by(provider: auth_hash.provider, extern_uid: auth_hash.uid)
  lib/gitlab/o_auth/user.rb:49:in `gl_user'
    @user ||= find_by_uid_and_provider
...
(126 additional frame(s) were not displayed)

RuntimeError: can't modify frozen String
Edited by Stan Hu