Author: bodewig
Date: Wed Mar 11 16:02:48 2015
New Revision: 1665915

URL: http://svn.apache.org/r1665915
Log:
LOG4NET-457 SMTP Appender should trim leading and trailing separators from 
address fields

based on patch by Éric Daigneault
closes #13

Modified:
    logging/log4net/trunk/src/log4net/Appender/SmtpAppender.cs

Modified: logging/log4net/trunk/src/log4net/Appender/SmtpAppender.cs
URL: 
http://svn.apache.org/viewvc/logging/log4net/trunk/src/log4net/Appender/SmtpAppender.cs?rev=1665915&r1=1665914&r2=1665915&view=diff
==============================================================================
--- logging/log4net/trunk/src/log4net/Appender/SmtpAppender.cs (original)
+++ logging/log4net/trunk/src/log4net/Appender/SmtpAppender.cs Wed Mar 11 
16:02:48 2015
@@ -106,7 +106,7 @@ namespace log4net.Appender
                public string To
                {
                        get { return m_to; }
-                       set { m_to = value; }
+                       set { m_to = MaybeTrimSeparators(value); }
                }
 
         /// <summary>
@@ -132,7 +132,7 @@ namespace log4net.Appender
         public string Cc
         {
             get { return m_cc; }
-            set { m_cc = value; }
+            set { m_cc = MaybeTrimSeparators(value); }
         }
 
         /// <summary>
@@ -150,7 +150,7 @@ namespace log4net.Appender
         public string Bcc
         {
             get { return m_bcc; }
-            set { m_bcc = value; }
+            set { m_bcc = MaybeTrimSeparators(value); }
         }
 
                /// <summary>
@@ -559,7 +559,16 @@ namespace log4net.Appender
                }
 
                #endregion // SmtpAuthentication Enum
-       }
+
+            private static readonly char[] ADDRESS_DELIMITERS = new char[] { 
',', ';' };
+            
+            /// <summary>
+            ///   trims leading and trailing commas or semicolons
+            /// </summary>
+            private static string MaybeTrimSeparators(string s) {
+                return string.IsNullOrEmpty(s) ? s : 
s.Trim(ADDRESS_DELIMITERS);
+            }
+        }
 }
 
 #endif // !NETCF


Reply via email to