Synch with Oort Gnus.
[elisp/gnus.git-] / lisp / nnmail.el
index 6c1a06a..f55318c 100644 (file)
@@ -103,7 +103,8 @@ The last element should always have \"\" as the regexp.
 
 This variable can also have a function as its value."
   :group 'nnmail-split
-  :type '(choice (repeat :tag "Alist" (group (string :tag "Name") regexp))
+  :type '(choice (repeat :tag "Alist" (group (string :tag "Name")
+                                            (choice regexp function)))
                 (function-item nnmail-split-fancy)
                 (function :tag "Other")))
 
@@ -1517,7 +1518,7 @@ See the documentation for the variable `nnmail-split-fancy' for documentation."
       (when (search-backward id nil t)
        (beginning-of-line)
        (skip-chars-forward "^\n\r\t")
-       (unless (eolp)
+       (unless (looking-at "[\r\n]")
          (forward-char 1)
          (buffer-substring (point)
                            (progn (end-of-line) (point))))))))
@@ -1770,7 +1771,9 @@ See the Info node `(gnus)Fancy Mail Splitting' for more details."
        (setq target (format-time-string (caddr regexp-target-pair) date)))
        ((and (not (equal header 'to-from))
             (string-match (cadr regexp-target-pair)
-                          (message-fetch-field header)))
+                          (or
+                           (message-fetch-field header)
+                           "")))
        (setq target
              (format-time-string (caddr regexp-target-pair) date)))))))