瀏覽代碼

fix(xmpp): Update previd value when trying to resume connection.

release-8443
Jaya Allamsetty 5 年之前
父節點
當前提交
ef7f59caaa
共有 1 個檔案被更改,包括 8 行新增2 行删除
  1. 8
    2
      modules/xmpp/ResumeTask.js

+ 8
- 2
modules/xmpp/ResumeTask.js 查看文件

125
 
125
 
126
         const url = new URL(this._stropheConn.service);
126
         const url = new URL(this._stropheConn.service);
127
         let { search } = url;
127
         let { search } = url;
128
+        const pattern = /(previd=)([\w-]+)/;
129
+        const oldToken = search.match(pattern);
128
 
130
 
129
-        // adds previd param only if missing
130
-        if (search.indexOf('previd=') === -1) {
131
+        // Replace previd if the previd value has changed.
132
+        if (oldToken && oldToken.indexOf(resumeToken) === -1) {
133
+            search = search.replace(pattern, `$1${resumeToken}`);
134
+
135
+        // Append previd if it doesn't exist.
136
+        } else if (!oldToken) {
131
             search += search.indexOf('?') === -1 ? `?previd=${resumeToken}` : `&previd=${resumeToken}`;
137
             search += search.indexOf('?') === -1 ? `?previd=${resumeToken}` : `&previd=${resumeToken}`;
132
         }
138
         }
133
 
139
 

Loading…
取消
儲存