Index: mimemail.inc
===================================================================
--- mimemail.inc	(revision 162)
+++ mimemail.inc	(revision 163)
@@ -346,8 +346,20 @@
     $a = (object) $a;
     // Check the list parameter if its set or ignore it (Upload module support).
     if(!isset($a->list) || $a->list) {
-      _mimemail_file($a->filepath, $a->filename, $a->filemime, 'attachment');
-      $parts = array_merge($parts, _mimemail_file());
+      if (isset($a->filepath)) {
+        _mimemail_file($a->filepath, $a->filename, $a->filemime, 'attachment');
+        $parts = array_merge($parts, _mimemail_file());
+      } 
+      elseif (isset($a->contents)) {
+        $parts = array_merge($parts,
+          array(array(
+            'content' => chunk_split(base64_encode($a->contents)),
+            'Content-Transfer-Encoding' => 'base64',
+            'Content-Disposition' => 'related',
+            'Content-Type' => $a->filemime,
+            'name' => $a->filename
+          )));
+      }
     }
   }
 
