jenkins-bot has submitted this change. ( 
https://gerrit.wikimedia.org/r/c/pywikibot/core/+/1018821?usp=email )

Change subject: [FIX] Skip process that requires login to logout
......................................................................

[FIX] Skip process that requires login to logout

Getting self.tokens['crsf'] triggers a login when not already logged in.
Checks LoginStatus and only continue the steps if still logged in.

Bug: T326614
Change-Id: I50e49e9ea8dbf2ef29c7606b4cd318ac02f8c33c
---
M pywikibot/site/_apisite.py
1 file changed, 19 insertions(+), 4 deletions(-)

Approvals:
  jenkins-bot: Verified
  Xqt: Looks good to me, approved




diff --git a/pywikibot/site/_apisite.py b/pywikibot/site/_apisite.py
index 340d82e..4924b60 100644
--- a/pywikibot/site/_apisite.py
+++ b/pywikibot/site/_apisite.py
@@ -471,10 +471,12 @@
         if self.is_oauth_token_available():
             pywikibot.warning('Using OAuth suppresses logout function')

-        req_params = {'action': 'logout', 'token': self.tokens['csrf']}
-        uirequest = self.simple_request(**req_params)
-        uirequest.submit()
-        self._loginstatus = login.LoginStatus.NOT_LOGGED_IN
+        # check if already logged out to avoid requiring logging in
+        if not self._loginstatus == login.LoginStatus.NOT_LOGGED_IN:
+            req_params = {'action': 'logout', 'token': self.tokens['csrf']}
+            uirequest = self.simple_request(**req_params)
+            uirequest.submit()
+            self._loginstatus = login.LoginStatus.NOT_LOGGED_IN

         # Reset tokens and user properties
         del self.userinfo

--
To view, visit 
https://gerrit.wikimedia.org/r/c/pywikibot/core/+/1018821?usp=email
To unsubscribe, or for help writing mail filters, visit 
https://gerrit.wikimedia.org/r/settings

Gerrit-Project: pywikibot/core
Gerrit-Branch: master
Gerrit-Change-Id: I50e49e9ea8dbf2ef29c7606b4cd318ac02f8c33c
Gerrit-Change-Number: 1018821
Gerrit-PatchSet: 1
Gerrit-Owner: Ericpien <eric.hs.p...@gmail.com>
Gerrit-Reviewer: Xqt <i...@gno.de>
Gerrit-Reviewer: jenkins-bot
Gerrit-MessageType: merged
_______________________________________________
Pywikibot-commits mailing list -- pywikibot-commits@lists.wikimedia.org
To unsubscribe send an email to pywikibot-commits-le...@lists.wikimedia.org

Reply via email to