Closed
Description
Introduced by the recent PR #96846.
There are two sync objects being used (s_defaultProviderSyncObject
, s_providerTable
) and a deadlock is possible since the ordering of these 2 locks can vary and both locks rerequested.
The repro is to call TypeDescriptor.GetProvider(Type)
and TypeDescriptor.AddProvider(..., Type)
on different threads.