// forward events raised by children private void ChildErrorLogItemAdded(object sender, ErrorLogItemAddedArgs e) { // If the sender is an ErrorLog and AutoMergeChildLog, consume its entries if (AutoMergeChildLog) { IErrorLog child = sender as IErrorLog; if (child != null) { lock ( mResourceLock ) { mList.AddRange(child.ErrorList); child.Clear(); } } } if (ErrorLogItemAdded != null) { ErrorLogItemAdded(this, e); } }