private void Timeout() { if ((!_complete) && (null != _expectedCurrent)) { TransactionsEtwProvider etwLog = TransactionsEtwProvider.Log; if (etwLog.IsEnabled()) { etwLog.TransactionScopeTimeout(_expectedCurrent.TransactionTraceId); } try { _expectedCurrent.Rollback(); } catch (ObjectDisposedException ex) { // Tolerate the fact that the transaction has already been disposed. if (etwLog.IsEnabled()) { etwLog.ExceptionConsumed(TraceSourceType.TraceSourceBase, ex); } } catch (TransactionException txEx) { // Tolerate transaction exceptions if (etwLog.IsEnabled()) { etwLog.ExceptionConsumed(TraceSourceType.TraceSourceBase, txEx); } } } }