fix user settings cache

v1.18.x
Barış Soner Uşaklı
parent 6fcd12eafe
commit db532fbb0d

@ -2,6 +2,7 @@
'use strict';
var async = require('async');
var _ = require('underscore');
var meta = require('../meta');
var db = require('../database');
@ -25,7 +26,7 @@ module.exports = function (User) {
var cached = cache.get('user:' + uid + ':settings');
if (cached) {
return onSettingsLoaded(uid, cached || {}, callback);
return onSettingsLoaded(uid, _.clone(cached || {}), callback);
}
async.waterfall([
@ -36,7 +37,7 @@ module.exports = function (User) {
settings = settings || {};
settings.uid = uid;
cache.set('user:' + uid + ':settings', settings);
onSettingsLoaded(uid, settings || {}, next);
onSettingsLoaded(uid, _.clone(settings || {}), next);
},
], callback);
};
@ -47,7 +48,7 @@ module.exports = function (User) {
return cache.get('user:' + uid + ':settings') || {};
});
async.map(settings, function (setting, next) {
onSettingsLoaded(setting.uid, setting, next);
onSettingsLoaded(setting.uid, _.clone(setting), next);
}, next);
}

Loading…
Cancel
Save