Explorar o código

BUgfix. `undefined` used as store prefix

JC Brand %!s(int64=4) %!d(string=hai) anos
pai
achega
17d9d2766d
Modificáronse 2 ficheiros con 4 adicións e 3 borrados
  1. 1 0
      karma.conf.js
  2. 3 3
      src/headless/core.js

+ 1 - 0
karma.conf.js

@@ -38,6 +38,7 @@ module.exports = function(config) {
       { pattern: "src/headless/plugins/status/tests/status.js", type: 'module' },
       { pattern: "src/headless/tests/converse.js", type: 'module' },
       { pattern: "src/headless/tests/eventemitter.js", type: 'module' },
+      { pattern: "src/headless/tests/persistence.js", type: 'module' },
       { pattern: "src/plugins/bookmark-views/tests/bookmarks.js", type: 'module' },
       { pattern: "src/plugins/chatview/tests/chatbox.js", type: 'module' },
       { pattern: "src/plugins/chatview/tests/emojis.js", type: 'module' },

+ 3 - 3
src/headless/core.js

@@ -751,7 +751,7 @@ async function initSessionStorage () {
     };
 }
 
-function initPersistentStorage () {
+function initPersistentStorage (store_name) {
     if (api.settings.get('persistent_store') === 'sessionStorage') {
         return;
     } else if (_converse.api.settings.get("persistent_store") === 'BrowserExtLocal') {
@@ -771,7 +771,7 @@ function initPersistentStorage () {
 
     const config = {
         'name': _converse.isTestEnv() ? 'converse-test-persistent' : 'converse-persistent',
-        'storeName': _converse.bare_jid
+        'storeName': store_name
     }
     if (_converse.api.settings.get("persistent_store") === 'localStorage') {
         config['description'] = 'localStorage instance';
@@ -990,7 +990,7 @@ async function initSession (jid) {
     const bare_jid = Strophe.getBareJidFromJid(jid).toLowerCase();
     const id = `converse.session-${bare_jid}`;
     if (_converse.session?.get('id') !== id) {
-        initPersistentStorage();
+        initPersistentStorage(bare_jid);
 
         _converse.session = new Model({ id });
         initStorage(_converse.session, id, is_shared_session ? "persistent" : "session");