private void UpdateDiagnostics(
OperationContext context,
bool diagnosticsExist,
ref DiagnosticInfoCollection diagnosticInfos)
{
if (diagnosticInfos == null)
{
return;
}
if (diagnosticsExist && context.StringTable.Count == 0)
{
diagnosticsExist = false;
for (int ii = 0; !diagnosticsExist && ii < diagnosticInfos.Count; ii++)
{
DiagnosticInfo diagnosticInfo = diagnosticInfos[ii];
while (diagnosticInfo != null)
{
if (!String.IsNullOrEmpty(diagnosticInfo.AdditionalInfo))
{
diagnosticsExist = true;
break;
}
diagnosticInfo = diagnosticInfo.InnerDiagnosticInfo;
}
}
}
if (!diagnosticsExist)
{
diagnosticInfos = null;
}
}