From 9a3be0ad688ea80fffee78635395141ad2419e8a Mon Sep 17 00:00:00 2001 From: Claire Date: Mon, 2 May 2022 01:00:08 +0200 Subject: [PATCH] Fix error when looking handle with surrounding spaces (#18225) --- app/controllers/api/v1/accounts/lookup_controller.rb | 2 ++ app/services/resolve_account_service.rb | 2 +- 2 files changed, 3 insertions(+), 1 deletion(-) diff --git a/app/controllers/api/v1/accounts/lookup_controller.rb b/app/controllers/api/v1/accounts/lookup_controller.rb index aee6be18a..8597f891d 100644 --- a/app/controllers/api/v1/accounts/lookup_controller.rb +++ b/app/controllers/api/v1/accounts/lookup_controller.rb @@ -12,5 +12,7 @@ class Api::V1::Accounts::LookupController < Api::BaseController def set_account @account = ResolveAccountService.new.call(params[:acct], skip_webfinger: true) || raise(ActiveRecord::RecordNotFound) + rescue Addressable::URI::InvalidURIError + raise(ActiveRecord::RecordNotFound) end end diff --git a/app/services/resolve_account_service.rb b/app/services/resolve_account_service.rb index 21332a03e..387e2e09b 100644 --- a/app/services/resolve_account_service.rb +++ b/app/services/resolve_account_service.rb @@ -66,7 +66,7 @@ class ResolveAccountService < BaseService @username = @account.username @domain = @account.domain else - @username, @domain = uri.split('@') + @username, @domain = uri.strip.gsub(/\A@/, '').split('@') end @domain = begin