diff --git a/src/Orchard.Web/Modules/Orchard.AuditTrail/Providers/Content/DiffGramAnalyzer.cs b/src/Orchard.Web/Modules/Orchard.AuditTrail/Providers/Content/DiffGramAnalyzer.cs index b14f7d2c9..570362a2b 100644 --- a/src/Orchard.Web/Modules/Orchard.AuditTrail/Providers/Content/DiffGramAnalyzer.cs +++ b/src/Orchard.Web/Modules/Orchard.AuditTrail/Providers/Content/DiffGramAnalyzer.cs @@ -77,29 +77,19 @@ namespace Orchard.AuditTrail.Providers.Content { } break; case "add": - if (isAttributeChange) { - var attributeName = match.Substring(1); - var value = reader.ReadElementContentAsString(); - - readNext = false; - yield return new DiffNode { - Type = DiffType.Addition, - Context = BuildContextName(stack, attributeName), - Current = value + var nodeName = reader.GetAttribute("name"); + var addedContent = default(string); + reader.Read(); + if (reader.NodeType != XmlNodeType.EndElement) { + nodeName = reader.Name; + addedContent = reader.ReadOuterXml(); + } + yield return + new DiffNode { + Type = DiffType.Addition, + Context = BuildContextName(stack, nodeName), + Current = addedContent }; - } - else { - var elementName = currentElement.Name.ToString(); - var content = reader.ReadElementContentAsString(); - - readNext = false; - yield return - new DiffNode { - Type = DiffType.Addition, - Context = BuildContextName(stack, elementName), - Current = content - }; - } break; } }