Prevent wrapExternal from triggering if recipient facet is no longer alive

This commit is contained in:
Tony Garnock-Jones 2018-12-16 06:50:52 +00:00
parent b85ba4a9f0
commit aebf989e8d
1 changed files with 8 additions and 6 deletions

View File

@ -100,13 +100,15 @@ Dataspace.wrapExternal = function (f) {
let savedFacet = Dataspace._currentFacet; let savedFacet = Dataspace._currentFacet;
let ac = savedFacet.actor; let ac = savedFacet.actor;
return function () { return function () {
let actuals = arguments; if (savedFacet.isLive) {
ac.dataspace.start(); let actuals = arguments;
ac.pushScript(function () { ac.dataspace.start();
Dataspace.withCurrentFacet(savedFacet, function () { ac.pushScript(function () {
f.apply(this, actuals); Dataspace.withCurrentFacet(savedFacet, function () {
f.apply(this, actuals);
});
}); });
}); }
}; };
}; };