Bläddra i källkod

Properly wait when clearing messages

JC Brand 5 år sedan
förälder
incheckning
149fcf5d32
2 ändrade filer med 4 tillägg och 5 borttagningar
  1. 3 4
      src/headless/converse-chat.js
  2. 1 1
      src/headless/converse-muc.js

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

@@ -377,8 +377,7 @@ converse.plugins.add('converse-chat', {
 
             async clearMessages () {
                 try {
-                    await Promise.all(this.messages.models.map(m => m.destroy()));
-                    this.messages.reset();
+                    await this.messages.clearSession();
                 } catch (e) {
                     this.messages.trigger('reset');
                     log.error(e);
@@ -411,9 +410,9 @@ converse.plugins.add('converse-chat', {
                 _converse.api.trigger('chatReconnected', this);
             },
 
-            onReconnection () {
+            async onReconnection () {
                 if (_converse.clear_messages_on_reconnection) {
-                    this.clearMessages();
+                    await this.clearMessages();
                 }
                 this.announceReconnection();
             },

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

@@ -409,7 +409,7 @@ converse.plugins.add('converse-muc', {
                     this.removeNonMembers();
                     await this.refreshRoomFeatures();
                     if (_converse.clear_messages_on_reconnection) {
-                        this.clearMessages();
+                        await this.clearMessages();
                     }
                     if (!u.isPersistableModel(this)) {
                         // XXX: Happens during tests, nothing to do if this