diff -Npur evolution-old/composer/e-msg-composer.c evolution-new/composer/e-msg-composer.c
--- evolution-old/composer/e-msg-composer.c	2009-08-19 17:56:07.000000000 +0800
+++ evolution-new/composer/e-msg-composer.c	2009-08-19 18:03:53.000000000 +0800
@@ -270,7 +270,7 @@ best_encoding (GByteArray *buf, const gc
 	if (status == (gsize) -1 || status > 0)
 		return -1;
 
-	if (count == 0)
+	if ((count == 0) && (buf->len < LINE_LEN))
 		return CAMEL_TRANSFER_ENCODING_7BIT;
 	else if (count <= buf->len * 0.17)
 		return CAMEL_TRANSFER_ENCODING_QUOTEDPRINTABLE;
@@ -683,6 +683,7 @@ build_message (EMsgComposer *composer,
 		part = camel_mime_part_new ();
 		camel_medium_set_content_object (CAMEL_MEDIUM (part), html);
 		camel_object_unref (html);
+		camel_mime_part_set_encoding (part, CAMEL_TRANSFER_ENCODING_QUOTEDPRINTABLE);
 		camel_multipart_add_part (body, part);
 		camel_object_unref (part);
 
