Gnus -- minor build / warning fixes [OK For Upstream]
[gnus] / lisp / ietf-drums.el
index 37e33b5..c0e1542 100644 (file)
@@ -1,7 +1,6 @@
 ;;; ietf-drums.el --- Functions for parsing RFC822bis headers
 
-;; Copyright (C) 1998, 1999, 2000, 2001, 2002, 2003, 2004,
-;;   2005, 2006, 2007, 2008 Free Software Foundation, Inc.
+;; Copyright (C) 1998-2016 Free Software Foundation, Inc.
 
 ;; Author: Lars Magne Ingebrigtsen <larsi@gnus.org>
 ;; This file is part of GNU Emacs.
@@ -39,7 +38,6 @@
 ;;; Code:
 
 (eval-when-compile (require 'cl))
-(require 'time-date)
 (require 'mm-util)
 
 (defvar ietf-drums-no-ws-ctl-token "\001-\010\013\014\016-\037\177"
@@ -119,14 +117,15 @@ backslash and doublequote.")
   (with-temp-buffer
     (let (c)
       (ietf-drums-init string)
-      (condition-case err
-         (while (not (eobp))
-           (setq c (char-after))
-           (cond
-            ((eq c ?\")
-             (forward-sexp 1))
-            ((eq c ?\()
-             (delete-region
+      (while (not (eobp))
+       (setq c (char-after))
+       (cond
+        ((eq c ?\")
+         (condition-case nil
+             (forward-sexp 1)
+           (error (goto-char (point-max)))))
+        ((eq c ?\()
+         (delete-region
               (point)
               (condition-case nil
                   (with-syntax-table (copy-syntax-table ietf-drums-syntax-table)
@@ -134,9 +133,8 @@ backslash and doublequote.")
                     (forward-sexp 1)
                     (point))
                 (error (point-max)))))
-            (t
-             (forward-char 1))))
-       (error nil))
+        (t
+         (forward-char 1))))
       (buffer-string))))
 
 (defun ietf-drums-remove-whitespace (string)
@@ -208,7 +206,6 @@ backslash and doublequote.")
                   (1+ (point))
                   (progn (forward-sexp 1) (1- (point))))))))
         (t
-         (message "Unknown symbol: %c" c)
          (forward-char 1))))
       ;; If we found no display-name, then we look for comments.
       (if display-name
@@ -216,7 +213,8 @@ backslash and doublequote.")
                (mapconcat 'identity (reverse display-name) " "))
        (setq display-string (ietf-drums-get-comment string)))
       (if (not mailbox)
-         (when (string-match "@" display-string)
+         (when (and display-string
+                    (string-match "@" display-string))
            (cons
             (mapconcat 'identity (nreverse display-name) "")
             (ietf-drums-get-comment string)))
@@ -296,5 +294,4 @@ a list of address strings."
 
 (provide 'ietf-drums)
 
-;; arch-tag: 379a0191-dbae-4ca6-a0f5-d4202c209ef9
 ;;; ietf-drums.el ends here