diff --git a/mimemail.inc b/mimemail.inc
index 387ac80..d2bb06c 100644
--- a/mimemail.inc
+++ b/mimemail.inc
@@ -312,11 +312,11 @@ function _mimemail_expand_links($matches) {
  */
 function mimemail_html_body($body, $subject, $plaintext = FALSE, $text = NULL, $attachments = array()) {
   if (empty($text)) {
-    // todo: remove this preg_replace once filter_xss() is properly handling
-    // direct descendant css selectors '>' in inline CSS. For now this cleans
-    // up our plain text part. See mimemail #364198, drupal #370903
-    $text = preg_replace('|<style.*?</style>|mis', '', $body);
-    $text = drupal_html_to_text($text);
+    // @todo Remove once filter_xss() can handle direct descendant selectors in inline CSS.
+    // @see http://drupal.org/node/364198 and http://drupal.org/node/370903
+    // Pull out the message body.
+    preg_match('|<body.*?</body>|mis', $body, $matches);
+    $text = drupal_html_to_text($matches[0]);
   }
   if ($plaintext) {
     //Plain mail without attachment
