diff --git a/apps/susimail/src/src/i2p/susi/util/FilenameUtil.java b/apps/susimail/src/src/i2p/susi/util/FilenameUtil.java
index a3704dd7d81fa5408a649464d9ba593b199fbf7f..7b67389fa42f3bce14c05d1b8728518b0a5dbeb9 100644
--- a/apps/susimail/src/src/i2p/susi/util/FilenameUtil.java
+++ b/apps/susimail/src/src/i2p/susi/util/FilenameUtil.java
@@ -124,17 +124,21 @@ public class FilenameUtil {
 							out.write(a);
 							break;
 						}
-						if( ( ( a >= '0' && a <= '9' ) || ( a >= 'A' && a <= 'F' ) ) &&
-								( ( b >= '0' && b <= '9' ) || ( b >= 'A' && b <= 'F' ) ) ) {
+						if (((a >= '0' && a <= '9') || (a >= 'A' && a <= 'F') || (a >= 'a' && a <= 'f')) &&
+						    ((b >= '0' && b <= '9') || (b >= 'A' && b <= 'F') || (b >= 'a' && b <= 'f'))) {
 							if( a >= '0' && a <= '9' )
 								a -= '0';
 							else if( a >= 'A' && a <= 'F' )
 								a = (byte) (a - 'A' + 10);
+							else if(a >= 'a' && a <= 'f')
+								a = (byte) (a - 'a' + 10);
 	
 							if( b >= '0' && b <= '9' )
 								b -= '0';
 							else if( b >= 'A' && b <= 'F' )
 								b = (byte) (b - 'A' + 10);
+							else if(b >= 'a' && b <= 'f')
+								b = (byte) (b - 'a' + 10);
 							
 							out.write(a*16 + b);
 						}
diff --git a/apps/susimail/src/src/i2p/susi/webmail/encoding/QuotedPrintable.java b/apps/susimail/src/src/i2p/susi/webmail/encoding/QuotedPrintable.java
index 9d214d93bd5b37e36c83def8bd0d45764481e890..ea4291fc6ecd8b4ecf79fd3a763e3568a2f538cd 100644
--- a/apps/susimail/src/src/i2p/susi/webmail/encoding/QuotedPrintable.java
+++ b/apps/susimail/src/src/i2p/susi/webmail/encoding/QuotedPrintable.java
@@ -159,8 +159,8 @@ public class QuotedPrintable extends Encoding {
 						out.write(a);
 						break;
 					}
-					if( ( ( a >= '0' && a <= '9' ) || ( a >= 'A' && a <= 'F' ) ) &&
-							( ( b >= '0' && b <= '9' ) || ( b >= 'A' && b <= 'F' ) ) ) {
+					if (((a >= '0' && a <= '9') || (a >= 'A' && a <= 'F') || (a >= 'a' && a <= 'f')) &&
+					    ((b >= '0' && b <= '9') || (b >= 'A' && b <= 'F') || (b >= 'a' && b <= 'f'))) {
 						/*
 						 * decode sequence
 						 */
@@ -169,11 +169,15 @@ public class QuotedPrintable extends Encoding {
 							a -= '0';
 						else if( a >= 'A' && a <= 'F' )
 							a = (byte) (a - 'A' + 10);
+						else if(a >= 'a' && a <= 'f')
+							a = (byte) (a - 'a' + 10);
 
 						if( b >= '0' && b <= '9' )
 							b -= '0';
 						else if( b >= 'A' && b <= 'F' )
 							b = (byte) (b - 'A' + 10);
+						else if(b >= 'a' && b <= 'f')
+							b = (byte) (b - 'a' + 10);
 						
 						out.write(a*16 + b);
 						continue;