diff --git a/src/Avalonia.Base/Threading/Dispatcher.cs b/src/Avalonia.Base/Threading/Dispatcher.cs index b7d5d5a5d2..908f431776 100644 --- a/src/Avalonia.Base/Threading/Dispatcher.cs +++ b/src/Avalonia.Base/Threading/Dispatcher.cs @@ -113,7 +113,7 @@ namespace Avalonia.Threading /// public void Post(Action action, T arg, DispatcherPriority priority = DispatcherPriority.Normal) { - Contract.Requires(action != null); + _ = action ?? throw new ArgumentNullException(nameof(action)); _jobRunner.Post(action, arg, priority); } diff --git a/src/Avalonia.Base/Threading/JobRunner.cs b/src/Avalonia.Base/Threading/JobRunner.cs index 66f6243a35..f2aef0414c 100644 --- a/src/Avalonia.Base/Threading/JobRunner.cs +++ b/src/Avalonia.Base/Threading/JobRunner.cs @@ -197,7 +197,7 @@ namespace Avalonia.Threading { private readonly Action _action; private readonly T _parameter; - private readonly TaskCompletionSource _taskCompletionSource; + private readonly TaskCompletionSource? _taskCompletionSource; /// /// Initializes a new instance of the class. @@ -212,7 +212,7 @@ namespace Avalonia.Threading _action = action; _parameter = parameter; Priority = priority; - _taskCompletionSource = throwOnUiThread ? null : new TaskCompletionSource(); + _taskCompletionSource = throwOnUiThread ? null : new TaskCompletionSource(); } /// @@ -229,7 +229,7 @@ namespace Avalonia.Threading try { _action(_parameter); - _taskCompletionSource.SetResult(null); + _taskCompletionSource.SetResult(default); } catch (Exception e) {