[fix] only reverse keys for "get" action to be safe.
This commit is contained in:
parent
999c6fbc6e
commit
8105c761ad
1 changed files with 8 additions and 4 deletions
|
@ -507,7 +507,12 @@ Provider.prototype._execute = function (action, syncLength /* [arguments] */) {
|
|||
destructive = ['set', 'clear', 'merge', 'reset'].indexOf(action) !== -1,
|
||||
self = this,
|
||||
response,
|
||||
mergeObjs = [];
|
||||
mergeObjs = [],
|
||||
keys = Object.keys(this.stores);
|
||||
|
||||
if (action === 'get') {
|
||||
keys = keys.reverse();
|
||||
}
|
||||
|
||||
function runAction (name, next) {
|
||||
var store = self.stores[name];
|
||||
|
@ -522,13 +527,12 @@ Provider.prototype._execute = function (action, syncLength /* [arguments] */) {
|
|||
}
|
||||
|
||||
if (callback) {
|
||||
return async.forEach(Object.keys(this.stores).reverse(), runAction, function (err) {
|
||||
return async.forEach(keys, runAction, function (err) {
|
||||
return err ? callback(err) : callback();
|
||||
});
|
||||
}
|
||||
|
||||
|
||||
Object.keys(this.stores).reverse().forEach(function (name) {
|
||||
keys.forEach(function (name) {
|
||||
if (typeof response === 'undefined') {
|
||||
var store = self.stores[name];
|
||||
|
||||
|
|
Loading…
Reference in a new issue