public void RemoveRange(X509Certificate2Collection certificates)
{
if (certificates == null)
{
throw new ArgumentNullException("certificates");
}
int num = 0;
try
{
X509Certificate2Enumerator enumerator = certificates.GetEnumerator();
while (enumerator.MoveNext())
{
X509Certificate2 current = enumerator.Current;
this.Remove(current);
num++;
}
}
catch
{
for (int i = 0; i < num; i++)
{
this.Add(certificates[i]);
}
throw;
}
}