nicko 2005/04/03 11:07:17
Modified:src/Core LoggingEvent.cs
Log:
Fix for LOG4NET-21. Remove from fixedProperties any key-value pairs where the
key or value (or fixed value) is null
Revision ChangesPath
1.20 +17 -8 logging-log4net/src/Core/LoggingEvent.cs
Index: LoggingEvent.cs
===
RCS file: /home/cvs/logging-log4net/src/Core/LoggingEvent.cs,v
retrieving revision 1.19
retrieving revision 1.20
diff -u -r1.19 -r1.20
--- LoggingEvent.cs 28 Jan 2005 20:47:28 - 1.19
+++ LoggingEvent.cs 3 Apr 2005 18:07:17 - 1.20
@@ -1281,19 +1281,28 @@
PropertiesDictionary fixedProperties = new
PropertiesDictionary();
- // Fix any IFixingRequired objects
+ // Validate properties
foreach(DictionaryEntry entry in
flattenedProperties)
{
- string key = (string)entry.Key;
- object val = entry.Value;
+ string key = entry.Key as string;
- IFixingRequired fixingRequired = val as
IFixingRequired;
- if (fixingRequired != null)
+ if (key != null)
{
- val =
fixingRequired.GetFixedObject();
- }
+ object val = entry.Value;
- fixedProperties[key] = val;
+ // Fix any IFixingRequired
objects
+ IFixingRequired fixingRequired
= val as IFixingRequired;
+ if (fixingRequired != null)
+ {
+ val =
fixingRequired.GetFixedObject();
+ }
+
+ // Strip keys with null values
+ if (val != null)
+ {
+ fixedProperties[key] =
val;
+ }
+ }
}
m_data.Properties = fixedProperties;