File mono-19955-fix-plus.patch of Package mono
--- rpmbuild/BUILD/mono-5.18.1.28/mcs/class/System.Transactions/System.Transactions/Transaction.cs 2020-06-19 15:42:20.334889300 +0000
+++ rpmbuild/BUILD/mono-5.18.1.28/mcs/class/System.Transactions/System.Transactions/Transaction.cs 2020-07-16 08:01:16.663211943 +0000
@@ -49,6 +49,7 @@
bool committed = false;
bool aborted = false;
TransactionScope scope = null;
+ private int completedFired = 0;
Exception innerException;
Guid tag = Guid.NewGuid ();
@@ -558,6 +562,7 @@
void FireCompleted ()
{
+ if(Interlocked.Exchange(ref completedFired, 1) == 1) return;
if (TransactionCompletedInternal != null)
TransactionCompletedInternal (this, new TransactionEventArgs(this));
}