protected void LooseMarshalBrokerError(
OpenWireFormat wireFormat,
BrokerError o,
BinaryWriter dataOut)
{
dataOut.Write(o!=null);
if (o!=null)
{
LooseMarshalString(o.ExceptionClass, dataOut);
LooseMarshalString(o.Message, dataOut);
if (wireFormat.StackTraceEnabled)
{
StackTraceElement[] stackTrace = o.StackTraceElements;
dataOut.Write((short) stackTrace.Length);
for (int i = 0; i < stackTrace.Length; i++)
{
StackTraceElement element = stackTrace[i];
LooseMarshalString(element.ClassName, dataOut);
LooseMarshalString(element.MethodName, dataOut);
LooseMarshalString(element.FileName, dataOut);
dataOut.Write(element.LineNumber);
}
LooseMarshalBrokerError(wireFormat, o.Cause, dataOut);
}
}
}