From: Decklin Foster Date: Sun, 26 Oct 2008 18:30:03 +0000 (-0400) Subject: Read in X-Foo headers X-Git-Url: https://git.notmuchmail.org/git?a=commitdiff_plain;h=aa1b6846c33b44dfd723ad9657448e45e7a2a143;p=sup Read in X-Foo headers --- diff --git a/lib/sup/mbox.rb b/lib/sup/mbox.rb index 4948954..89b00ed 100644 --- a/lib/sup/mbox.rb +++ b/lib/sup/mbox.rb @@ -21,6 +21,11 @@ module MBox ## when scanning over large mbox files. while(line = f.gets) case line + ## these three can occur multiple times, and we want the first one + when /^(Delivered-To):#{HEADER_RE}$/i, + /^(X-Original-To):#{HEADER_RE}$/i, + /^(Envelope-To):#{HEADER_RE}$/i: header[last = $1] ||= $2 + when /^(From):#{HEADER_RE}$/i, /^(To):#{HEADER_RE}$/i, /^(Cc):#{HEADER_RE}$/i, @@ -33,15 +38,10 @@ module MBox /^(List-Post):#{HEADER_RE}$/i, /^(List-Subscribe):#{HEADER_RE}$/i, /^(List-Unsubscribe):#{HEADER_RE}$/i, - /^(Status):#{HEADER_RE}$/i: header[last = $1] = $2 + /^(Status):#{HEADER_RE}$/i, + /^(X-\S+):#{HEADER_RE}$/: header[last = $1] = $2 when /^(Message-Id):#{HEADER_RE}$/i: header[mid_field = last = $1] = $2 - ## these next three can occur multiple times, and we want the - ## first one - when /^(Delivered-To):#{HEADER_RE}$/i, - /^(X-Original-To):#{HEADER_RE}$/i, - /^(Envelope-To):#{HEADER_RE}$/i: header[last = $1] ||= $2 - when /^\r*$/: break when /^\S+:/: last = nil # some other header we don't care about else