     dup end-of-stream?>> [ process-header parse-multipart-loop ] unless ;
 
 : parse-multipart ( separator -- mime-parts )
-    <multipart> parse-beginning parse-multipart-loop
+    <multipart> parse-beginning fill-bytes parse-multipart-loop
     mime-parts>> ;

    [ dump-until-separator ] with-string-writer ;

: read-header ( multipart -- multipart )
    "\r\n\r\n" dump-string dup "--\r" = [
        drop
    ] [
        parse-headers >>header
    ] if ;

: empty-name? ( string -- ? )

    [ nip ] [ start ] 2bi [
        cut-slice
        [ mime-write ]
        [ over current-separator>> length short tail-slice >>bytes ] bi*
    ] [
        drop
        dup [ bytes>> ] [ current-separator>> ] bi split-bytes mime-write
        >>bytes fill-bytes dup end-of-stream?>> [ dump-until-separator ] unless
    ] if* ;

