/// <summary> /// Set parsedStack from an array of StackFrame objects. /// </summary> public void SetParsedStack(System.Diagnostics.StackFrame[] frames) { List <StackFrame> orderedStackTrace = new List <StackFrame>(); if (this.Exceptions != null && this.Exceptions.Count > 0) { if (frames != null && frames.Length > 0) { int stackLength = 0; this.Exceptions[0].parsedStack = new List <StackFrame>(); this.Exceptions[0].hasFullStack = true; for (int level = 0; level < frames.Length; level++) { StackFrame sf = ExceptionConverter.GetStackFrame(frames[level], level); stackLength += ExceptionConverter.GetStackFrameLength(sf); if (stackLength > ExceptionConverter.MaxParsedStackLength) { this.Exceptions[0].hasFullStack = false; break; } this.Exceptions[0].parsedStack.Add(sf); } } } }