about summary refs log tree commit diff
path: root/src/state/models/session.ts
diff options
context:
space:
mode:
Diffstat (limited to 'src/state/models/session.ts')
-rw-r--r--src/state/models/session.ts14
1 files changed, 12 insertions, 2 deletions
diff --git a/src/state/models/session.ts b/src/state/models/session.ts
index 77c1fb595..bc0a9123f 100644
--- a/src/state/models/session.ts
+++ b/src/state/models/session.ts
@@ -1,4 +1,4 @@
-import {makeAutoObservable} from 'mobx'
+import {makeAutoObservable, runInAction} from 'mobx'
 import {
   sessionClient as AtpApi,
   Session,
@@ -298,9 +298,19 @@ export class SessionModel {
     })
     try {
       const sess = await api.com.atproto.session.get()
-      if (!sess.success || sess.data.did !== account.did) {
+      if (
+        !sess.success ||
+        sess.data.did !== account.did ||
+        !api.sessionManager.session
+      ) {
         return false
       }
+
+      // copy over the access tokens, as they may have refreshed during the .get() above
+      runInAction(() => {
+        account.refreshJwt = api.sessionManager.session?.refreshJwt
+        account.accessJwt = api.sessionManager.session?.accessJwt
+      })
     } catch (_e) {
       return false
     }