diff --git a/packages/zoe/src/contractFacet/exit.js b/packages/zoe/src/contractFacet/exit.js index 2d541ba28060..ac1cd92791e0 100644 --- a/packages/zoe/src/contractFacet/exit.js +++ b/packages/zoe/src/contractFacet/exit.js @@ -35,6 +35,7 @@ export const makeMakeExiter = baggage => { exit() { const { state } = this; state.zcfSeat.exit(); + state.zcfSeat = undefined; }, }, { diff --git a/packages/zoe/src/contractFacet/zcfSeat.js b/packages/zoe/src/contractFacet/zcfSeat.js index 2ba5f7e4796d..15cc5403d12f 100644 --- a/packages/zoe/src/contractFacet/zcfSeat.js +++ b/packages/zoe/src/contractFacet/zcfSeat.js @@ -159,6 +159,7 @@ export const createSeatManager = ( assertNoStagedAllocation(self); doExitSeat(self); E(zoeInstanceAdmin).exitSeat(zcfSeatToSeatHandle.get(self), completion); + zcfSeatToSeatHandle.delete(self); }, fail( reason = Error( @@ -179,6 +180,7 @@ export const createSeatManager = ( zcfSeatToSeatHandle.get(self), harden(reason), ); + zcfSeatToSeatHandle.delete(self); } return reason; },