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));
 		}
openSUSE Build Service is sponsored by