1
1
package org .simplejavamail .converter .internal .mimemessage ;
2
2
3
3
import com .sun .mail .handlers .text_plain ;
4
+ import org .simplejavamail .internal .util .MiscUtil ;
4
5
import org .simplejavamail .internal .util .Preconditions ;
5
6
6
7
import javax .activation .ActivationDataFlavor ;
@@ -160,11 +161,11 @@ private static void parseMimePartTree(@Nonnull final MimePart currentPart, @Nonn
160
161
161
162
@ SuppressWarnings ("StatementWithEmptyBody" )
162
163
private static void parseHeader (final Header header , @ Nonnull final ParsedMimeMessageComponents parsedComponents ) {
163
- if (header . getName (). equals ( "Disposition-Notification-To" )) {
164
+ if (isEmailHeader ( header , "Disposition-Notification-To" )) {
164
165
parsedComponents .dispositionNotificationTo = createAddress (header , "Disposition-Notification-To" );
165
- } else if (header . getName (). equals ( "Return-Receipt-To" )) {
166
+ } else if (isEmailHeader ( header , "Return-Receipt-To" )) {
166
167
parsedComponents .returnReceiptTo = createAddress (header , "Return-Receipt-To" );
167
- } else if (header . getName (). equals ( "Return-Path" )) {
168
+ } else if (isEmailHeader ( header , "Return-Path" )) {
168
169
parsedComponents .bounceToAddress = createAddress (header , "Return-Path" );
169
170
} else if (!HEADERS_TO_IGNORE .contains (header .getName ())) {
170
171
parsedComponents .headers .put (header .getName (), header .getValue ());
@@ -173,6 +174,12 @@ private static void parseHeader(final Header header, @Nonnull final ParsedMimeMe
173
174
}
174
175
}
175
176
177
+ private static boolean isEmailHeader (Header header , String emailHeaderName ) {
178
+ return header .getName ().equals (emailHeaderName ) &&
179
+ !MiscUtil .valueNullOrEmpty (header .getValue ()) &&
180
+ !header .getValue ().equals ("<>" );
181
+ }
182
+
176
183
@ SuppressWarnings ("WeakerAccess" )
177
184
public static String parseFileName (@ Nonnull final Part currentPart ) {
178
185
try {
0 commit comments