Skip to content

Commit 3931f61

Browse files
committed
dispose service before throw
1 parent 9d9c9ae commit 3931f61

File tree

1 file changed

+6
-6
lines changed

1 file changed

+6
-6
lines changed

src/libraries/Microsoft.Extensions.DependencyInjection/src/ServiceLookup/ServiceProviderEngineScope.cs

Lines changed: 6 additions & 6 deletions
Original file line numberDiff line numberDiff line change
@@ -53,13 +53,13 @@ internal object CaptureDisposable(object service)
5353
{
5454
if (_disposed)
5555
{
56-
if (_disposables != null)
56+
if (service is IDisposable disposable)
5757
{
58-
// cleanup disposable just in case still has items before throwing
59-
foreach (IDisposable disposable in _disposables)
60-
{
61-
disposable.Dispose();
62-
}
58+
disposable.Dispose();
59+
}
60+
else
61+
{
62+
((IAsyncDisposable)service).DisposeAsync().AsTask().Wait();
6363
}
6464
ThrowHelper.ThrowObjectDisposedException();
6565
}

0 commit comments

Comments
 (0)