From e5ce250392c6dd039e252258d049df85edb6e676 Mon Sep 17 00:00:00 2001 From: John O'Keefe Date: Fri, 11 Sep 2026 15:23:29 -0400 Subject: [PATCH] fix(mal): correct swapped access and refresh token variables In CheckIfMyAnimeListLoggedIn and MyAnimeListLogin the keyring lookups assigned MyAnimeListAccessToken to refreshToken and MyAnimeListRefreshToken to accessToken. Downstream code checks len(accessToken.Data) for login state and assigns accessToken.Data -> myAnimeListJwt.AccessToken, so the swap gated login on the refresh token and stored each token in the wrong field. Swap the variable names to match their keyring keys so login detection, JWT restoration, and the empty-token fallback in MyAnimeListLogin use the correct values. --- MALUserFunctions.go | 8 ++++---- 1 file changed, 4 insertions(+), 4 deletions(-) diff --git a/MALUserFunctions.go b/MALUserFunctions.go index 36a5dff..2191b38 100644 --- a/MALUserFunctions.go +++ b/MALUserFunctions.go @@ -74,8 +74,8 @@ func (a *App) CheckIfMyAnimeListLoggedIn() bool { if (MyAnimeListJWT{} == myAnimeListJwt) { tokenType, tokenErr := myAnimeListRing.Get("MyAnimeListTokenType") expiresIn, expiresInErr := myAnimeListRing.Get("MyAnimeListExpiresIn") - refreshToken, refreshTokenErr := myAnimeListRing.Get("MyAnimeListAccessToken") - accessToken, accessTokenErr := myAnimeListRing.Get("MyAnimeListRefreshToken") + accessToken, accessTokenErr := myAnimeListRing.Get("MyAnimeListAccessToken") + refreshToken, refreshTokenErr := myAnimeListRing.Get("MyAnimeListRefreshToken") if (tokenErr != nil || expiresInErr != nil || refreshTokenErr != nil || accessTokenErr != nil) || len(accessToken.Data) == 0 { return false } else { @@ -99,8 +99,8 @@ func (a *App) MyAnimeListLogin() { fmt.Println("check logged in function failed") tokenType, tokenErr := myAnimeListRing.Get("MyAnimeListTokenType") expiresIn, expiresInErr := myAnimeListRing.Get("MyAnimeListExpiresIn") - refreshToken, refreshTokenErr := myAnimeListRing.Get("MyAnimeListAccessToken") - accessToken, accessTokenErr := myAnimeListRing.Get("MyAnimeListRefreshToken") + accessToken, accessTokenErr := myAnimeListRing.Get("MyAnimeListAccessToken") + refreshToken, refreshTokenErr := myAnimeListRing.Get("MyAnimeListRefreshToken") if (tokenErr != nil || expiresInErr != nil || refreshTokenErr != nil || accessTokenErr != nil) || len(accessToken.Data) == 0 { verifier, _ := verifier() getMyAnimeListCodeUrl := "https://myanimelist.net/v1/oauth2/authorize?response_type=code&client_id=" + Environment.MAL_CLIENT_ID + "&redirect_uri=" + Environment.MAL_CALLBACK_URI + "&code_challenge=" + verifier.Value + "&code_challenge_method=plain"