summary refs log tree commit diff
diff options
context:
space:
mode:
-rw-r--r--email/email.scm6
1 files changed, 4 insertions, 2 deletions
diff --git a/email/email.scm b/email/email.scm
index 565f8e7..7dc882c 100644
--- a/email/email.scm
+++ b/email/email.scm
@@ -894,8 +894,10 @@ list of header keys and values."
   ;; Read and discard From_ line
   (get-line-with-delimiter port)
   ;; Read the actual email
-  (read-while port get-line-with-delimiter
-              (negate (cut string-prefix? "From " <>))))
+  (let ((email (read-bytes-till
+                port (string->bytevector "\nFrom " "us-ascii"))))
+    (read-char port)
+    email))
 
 (define (mbox->emails port)
   (read-objects read-next-email-in-mbox port))