Closed jvpoucke closed 12 years ago
Code in persistence.store.memory.js should be: persistence.flush = function (tx, callback) { var args = argspec.getArgs(arguments, [ { name: "tx", optional: true, check: persistence.isTransaction }, { name: "callback", optional: true, check: argspec.isCallback(), defaultValue: function(){} } ]);
var session = this; /*<------ bugfix ---*/ var fns = persistence.flushHooks; persistence.asyncForEach(fns, function(fn, callback) { fn(session, tx, callback); /*<------ else session in undefined here ---*/ }, function() { var trackedObjects = persistence.trackedObjects; for(var id in trackedObjects) { if(trackedObjects.hasOwnProperty(id)) { if (persistence.objectsToRemove.hasOwnProperty(id)) { delete trackedObjects[id]; } else { trackedObjects[id]._dirtyProperties = {}; } } } args.callback(); });
};
Fixed. Thanks!
Code in persistence.store.memory.js should be: persistence.flush = function (tx, callback) { var args = argspec.getArgs(arguments, [ { name: "tx", optional: true, check: persistence.isTransaction }, { name: "callback", optional: true, check: argspec.isCallback(), defaultValue: function(){} } ]);
};