crashanalysercmd/Libraries/File Formats/Plugins/CrashXmlPlugin/FileFormat/Segment/Entries/Stacks/CXmlStack.cs
changeset 2 0c91f0baec58
parent 0 818e61de6cd1
child 3 045ade241ef5
equal deleted inserted replaced
1:7a31f7298d8f 2:0c91f0baec58
    20 using CrashItemLib.Crash.Base;
    20 using CrashItemLib.Crash.Base;
    21 using CrashItemLib.Crash.Symbols;
    21 using CrashItemLib.Crash.Symbols;
    22 using CrashItemLib.Crash.Stacks;
    22 using CrashItemLib.Crash.Stacks;
    23 using CrashItemLib.Crash.Registers;
    23 using CrashItemLib.Crash.Registers;
    24 using CrashXmlPlugin.FileFormat.Node;
    24 using CrashXmlPlugin.FileFormat.Node;
       
    25 using MobileCrashLib;
    25 
    26 
    26 namespace CrashXmlPlugin.FileFormat.Segment.Entries.Stacks
    27 namespace CrashXmlPlugin.FileFormat.Segment.Entries.Stacks
    27 {
    28 {
    28     internal class CXmlStack : CXmlNode
    29     internal class CXmlStack : CXmlNode
    29 	{
    30 	{
    50             }
    51             }
    51 
    52 
    52             aParameters.Writer.WriteElementString( SegConstants.CmnBase, iStack.Base.ToString("x8") );
    53             aParameters.Writer.WriteElementString( SegConstants.CmnBase, iStack.Base.ToString("x8") );
    53             aParameters.Writer.WriteElementString( SegConstants.CmnSize, iStack.Size.ToString( "x" ) );
    54             aParameters.Writer.WriteElementString( SegConstants.CmnSize, iStack.Size.ToString( "x" ) );
    54             aParameters.Writer.WriteElementString( SegConstants.CmnRange, iStack.Range.ToString() );
    55             aParameters.Writer.WriteElementString( SegConstants.CmnRange, iStack.Range.ToString() );
       
    56 
       
    57             // Write defect hash
       
    58             try
       
    59             {
       
    60                 MobileCrashHashBuilder hashBuilder = MobileCrashHashBuilder.New(MobileCrashHashBuilder.TConfiguration.EDefault, iStack);
       
    61                 if (hashBuilder != null)
       
    62                 {
       
    63                     aParameters.Writer.WriteElementString(SegConstants.Stacks_Stack_Hash, hashBuilder.GetHash());
       
    64                 }
       
    65             }
       
    66             catch (Exception ex)
       
    67             {       
       
    68                 // Could not create MobileCrashHashBuilder, ignore.
       
    69             }
    55 
    70 
    56             // Write any messages
    71             // Write any messages
    57             CXmlSegBase.XmlSerializeMessages( aParameters, iStack );
    72             CXmlSegBase.XmlSerializeMessages( aParameters, iStack );
    58         }
    73         }
    59 
    74