From e34934986073cc85ca9371d7011c80c34e8d2fab Mon Sep 17 00:00:00 2001 From: Sebastien Ros Date: Thu, 18 Sep 2014 10:45:31 -0700 Subject: [PATCH] Bullet proofing TransactionManager.Cancel() --- src/Orchard/Data/SessionLocator.cs | 6 ++++-- 1 file changed, 4 insertions(+), 2 deletions(-) diff --git a/src/Orchard/Data/SessionLocator.cs b/src/Orchard/Data/SessionLocator.cs index e6d74d420..126fc1de5 100644 --- a/src/Orchard/Data/SessionLocator.cs +++ b/src/Orchard/Data/SessionLocator.cs @@ -49,8 +49,10 @@ namespace Orchard.Data { } public void Cancel() { - Logger.Debug("Rolling back transaction"); - _session.Transaction.Rollback(); + if (_session!= null && !_session.Transaction.WasRolledBack && _session.Transaction.IsActive) { + Logger.Debug("Rolling back transaction"); + _session.Transaction.Rollback(); + } } public void Dispose() {