From 2584d6dcbaf722b70ab66c1e95fbf99a03892b3b Mon Sep 17 00:00:00 2001 From: Shivam Mishra Date: Mon, 9 Jun 2025 16:02:45 +0530 Subject: [PATCH 1/2] chore: raise a specific error Co-authored-by: Copilot <175728472+Copilot@users.noreply.github.com> --- app/controllers/oauth_callback_controller.rb | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/app/controllers/oauth_callback_controller.rb b/app/controllers/oauth_callback_controller.rb index e9c327109..d2273b932 100644 --- a/app/controllers/oauth_callback_controller.rb +++ b/app/controllers/oauth_callback_controller.rb @@ -82,7 +82,7 @@ class OauthCallbackController < ApplicationController end def account_from_signed_id - raise 'Missing state variable' if params[:state].blank? + raise ActionController::BadRequest, 'Missing state variable' if params[:state].blank? GlobalID::Locator.locate_signed(params[:state]) end From 9b3148e16dc89bea0e229454017ba0a5e78f1e69 Mon Sep 17 00:00:00 2001 From: Shivam Mishra Date: Mon, 9 Jun 2025 16:06:04 +0530 Subject: [PATCH 2/2] feat: ensure account is present Co-authored-by: Copilot <175728472+Copilot@users.noreply.github.com> --- app/controllers/oauth_callback_controller.rb | 5 ++++- 1 file changed, 4 insertions(+), 1 deletion(-) diff --git a/app/controllers/oauth_callback_controller.rb b/app/controllers/oauth_callback_controller.rb index d2273b932..be0fa5008 100644 --- a/app/controllers/oauth_callback_controller.rb +++ b/app/controllers/oauth_callback_controller.rb @@ -84,7 +84,10 @@ class OauthCallbackController < ApplicationController def account_from_signed_id raise ActionController::BadRequest, 'Missing state variable' if params[:state].blank? - GlobalID::Locator.locate_signed(params[:state]) + account = GlobalID::Locator.locate_signed(params[:state]) + raise 'Invalid or expired state' if account.nil? + + account end def account