diff --git a/ULogViewer/Logs/DataSources/WindowsEventLogDataSource.cs b/ULogViewer/Logs/DataSources/WindowsEventLogDataSource.cs index ace7f999..880b8405 100644 --- a/ULogViewer/Logs/DataSources/WindowsEventLogDataSource.cs +++ b/ULogViewer/Logs/DataSources/WindowsEventLogDataSource.cs @@ -3,7 +3,6 @@ using System.Collections.Generic; using System.Diagnostics; using System.IO; -using System.Net; using System.Threading; using System.Threading.Tasks; @@ -64,10 +63,10 @@ public ReaderImpl(WindowsEventLogDataSource source, EventLog eventLog) it.Add($"{timestamp:yyyy/MM/dd HH:mm:ss}"); it.Add($"{eventId}"); it.Add($"{level}"); - it.Add($"{WebUtility.HtmlEncode(sourceName)}"); + it.Add($"{sourceName}"); it.Add(""); foreach (var messageLine in message.Split('\n')) - it.Add($"{WebUtility.HtmlEncode(messageLine.TrimEnd())}"); + it.Add($"{messageLine.TrimEnd()}"); }); return ""; } diff --git a/ULogViewer/Logs/DataSources/WindowsEventLogFileDataSource.cs b/ULogViewer/Logs/DataSources/WindowsEventLogFileDataSource.cs index 514eab3b..319344ba 100644 --- a/ULogViewer/Logs/DataSources/WindowsEventLogFileDataSource.cs +++ b/ULogViewer/Logs/DataSources/WindowsEventLogFileDataSource.cs @@ -60,7 +60,7 @@ static TextReader ReadMessageFromEventData(XmlElement eventDataNode) if (dataNode.NodeType == XmlNodeType.Element && dataNode.Name == "Data") { if (dataNode.Attributes?.Count == 0 && dataNode.FirstChild is XmlText dataText) - return new StringReader(dataText.Value ?? ""); + return new StringReader(WebUtility.HtmlDecode(dataText.Value) ?? ""); var dataLines = new StringBuilder(); do { @@ -75,19 +75,19 @@ static TextReader ReadMessageFromEventData(XmlElement eventDataNode) { dataLines.Append(nameAttr.Value); dataLines.Append(": "); - dataLines.Append(dataNode.InnerXml.Trim()); + dataLines.Append(WebUtility.HtmlDecode(dataNode.InnerXml.Trim())); } else if (dataNode.FirstChild is not null) { dataLines.Append("Data: "); - dataLines.Append(dataNode.InnerXml.Trim()); + dataLines.Append(WebUtility.HtmlDecode(dataNode.InnerXml.Trim())); } } else if (dataNode.FirstChild is not null) { dataLines.Append(dataNode.Name); dataLines.Append(": "); - dataLines.Append(dataNode.InnerXml.Trim()); + dataLines.Append(WebUtility.HtmlDecode(dataNode.InnerXml.Trim())); } } finally @@ -133,10 +133,10 @@ static TextReader ReadMessageFromUserData(XmlElement userDataNode) if (propertyValueNode?.NodeType == XmlNodeType.Element && propertyValueNode.ChildNodes.Count <= 1) { - messageBuffer.Append(propertyValueNode.InnerXml.Trim()); + messageBuffer.Append(WebUtility.HtmlDecode(propertyValueNode.InnerXml.Trim())); } else - messageBuffer.Append(propertyNode.InnerXml.Trim()); + messageBuffer.Append(WebUtility.HtmlDecode(propertyNode.InnerXml.Trim())); } propertyNode = propertyNode.NextSibling; } @@ -145,8 +145,8 @@ static TextReader ReadMessageFromUserData(XmlElement userDataNode) childNode = childNode.NextSibling; } if (messageBuffer.Length > 0) - return new StringReader(messageBuffer.ToString()); - return new StringReader(userDataNode.InnerXml.Trim()); + return new StringReader(WebUtility.HtmlDecode(messageBuffer.ToString())); + return new StringReader(WebUtility.HtmlDecode(userDataNode.InnerXml.Trim())); } /// @@ -173,20 +173,20 @@ static TextReader ReadMessageFromUserData(XmlElement userDataNode) // generate lines for record recordLines.Enqueue($"{record.Timestamp.DateTime.ToLocalTime():yyyy/MM/dd HH:mm:ss}"); - recordLines.Enqueue($"{WebUtility.HtmlEncode(record.Computer)}"); - recordLines.Enqueue($"{WebUtility.HtmlEncode(record.UserName)}"); - recordLines.Enqueue($"{WebUtility.HtmlEncode(record.Channel)}"); + recordLines.Enqueue($"{record.Computer}"); + recordLines.Enqueue($"{record.UserName}"); + recordLines.Enqueue($"{record.Channel}"); recordLines.Enqueue($"{record.ProcessId}"); recordLines.Enqueue($"{record.ThreadId}"); recordLines.Enqueue($"{record.EventId}"); recordLines.Enqueue($"{level}"); - recordLines.Enqueue($"{WebUtility.HtmlEncode(record.Provider)}"); + recordLines.Enqueue($"{record.Provider}"); recordLines.Enqueue(""); var messageReader = ReadMessage(record.Payload); var messageLine = messageReader.ReadLine(); while (messageLine != null) { - recordLines.Enqueue(WebUtility.HtmlEncode(messageLine).TrimEnd()); + recordLines.Enqueue(messageLine.TrimEnd()); messageLine = messageReader.ReadLine(); } recordLines.Enqueue("");