From c6e68ac24f45f097a8c295d3432c6e5387a5b17a Mon Sep 17 00:00:00 2001 From: John Rommel Estropia Date: Wed, 5 Jul 2017 23:32:45 +0900 Subject: [PATCH] reset transactions' context on deinit to break reference cycles in unsafed many-to-many relationships --- Sources/BaseDataTransaction.swift | 5 +++++ 1 file changed, 5 insertions(+) diff --git a/Sources/BaseDataTransaction.swift b/Sources/BaseDataTransaction.swift index dd04b78..a422bf6 100644 --- a/Sources/BaseDataTransaction.swift +++ b/Sources/BaseDataTransaction.swift @@ -438,6 +438,11 @@ public /*abstract*/ class BaseDataTransaction { return self.bypassesQueueing || self.transactionQueue.cs_isCurrentExecutionContext() } + deinit { + + self.context.reset() + } + // MARK: Deprecated