Просмотр исходного кода

Disconnect MUCs when we don't have a resumable SMACKS session

JC Brand 6 лет назад
Родитель
Сommit
0d928edf7e
2 измененных файлов с 5 добавлено и 4 удалено
  1. 1 1
      src/headless/converse-chatboxes.js
  2. 4 3
      src/headless/converse-muc.js

+ 1 - 1
src/headless/converse-chatboxes.js

@@ -1227,7 +1227,7 @@ converse.plugins.add('converse-chatboxes', {
              * @namespace _converse.api.chats
              * @namespace _converse.api.chats
              * @memberOf _converse.api
              * @memberOf _converse.api
              */
              */
-            'chats': {
+            chats: {
                 /**
                 /**
                  * @method _converse.api.chats.create
                  * @method _converse.api.chats.create
                  * @param {string|string[]} jid|jids An jid or array of jids
                  * @param {string|string[]} jid|jids An jid or array of jids

+ 4 - 3
src/headless/converse-muc.js

@@ -1968,9 +1968,10 @@ converse.plugins.add('converse-muc', {
         _converse.api.listen.on('statusInitialized', () => {
         _converse.api.listen.on('statusInitialized', () => {
             window.addEventListener(_converse.unloadevent, () => {
             window.addEventListener(_converse.unloadevent, () => {
                 const using_websocket = _converse.api.connection.isType('websocket');
                 const using_websocket = _converse.api.connection.isType('websocket');
-                if (using_websocket && !_converse.enable_smacks) {
-                    // For non-SMACKS websocket connections, we disconnect all
-                    // chatrooms when the page unloads.
+                if (using_websocket &&
+                        (!_converse.enable_smacks || !_converse.session.get('smacks_stream_id'))) {
+                    // For non-SMACKS websocket connections, or non-resumeable
+                    // connections, we disconnect all chatrooms when the page unloads.
                     // See issue #1111
                     // See issue #1111
                     disconnectChatRooms();
                     disconnectChatRooms();
                 }
                 }