emacs-diffs
[Top][All Lists]
Advanced

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

[Emacs-diffs] Changes to emacs/lisp/gnus/ietf-drums.el,v


From: Miles Bader
Subject: [Emacs-diffs] Changes to emacs/lisp/gnus/ietf-drums.el,v
Date: Sun, 28 Oct 2007 09:18:50 +0000

CVSROOT:        /cvsroot/emacs
Module name:    emacs
Changes by:     Miles Bader <miles>     07/10/28 09:18:40

Index: lisp/gnus/ietf-drums.el
===================================================================
RCS file: /cvsroot/emacs/emacs/lisp/gnus/ietf-drums.el,v
retrieving revision 1.15
retrieving revision 1.16
diff -u -b -r1.15 -r1.16
--- lisp/gnus/ietf-drums.el     26 Jul 2007 05:27:00 -0000      1.15
+++ lisp/gnus/ietf-drums.el     28 Oct 2007 09:18:27 -0000      1.16
@@ -99,14 +99,14 @@
          (push c out)))
        (range
        (while (<= b c)
-         (push (mm-make-char 'ascii b) out)
+         (push (make-char 'ascii b) out)
          (incf b))
        (setq range nil))
        ((= i (length token))
-       (push (mm-make-char 'ascii c) out))
+       (push (make-char 'ascii c) out))
        (t
        (when b
-         (push (mm-make-char 'ascii b) out))
+         (push (make-char 'ascii b) out))
        (setq b c))))
     (nreverse out)))
 
@@ -200,7 +200,9 @@
                  (buffer-substring
                   (1+ (point))
                   (progn (forward-sexp 1) (1- (point))))))))
-        (t (error "Unknown symbol: %c" c))))
+        (t
+         (message "Unknown symbol: %c" c)
+         (forward-char 1))))
       ;; If we found no display-name, then we look for comments.
       (if display-name
          (setq display-string
@@ -213,8 +215,10 @@
             (ietf-drums-get-comment string)))
        (cons mailbox display-string)))))
 
-(defun ietf-drums-parse-addresses (string)
-  "Parse STRING and return a list of MAILBOX / DISPLAY-NAME pairs."
+(defun ietf-drums-parse-addresses (string &optional rawp)
+  "Parse STRING and return a list of MAILBOX / DISPLAY-NAME pairs.
+If RAWP, don't actually parse the addresses, but instead return
+a list of address strings."
   (if (null string)
       nil
     (with-temp-buffer
@@ -231,20 +235,24 @@
               (skip-chars-forward "^,"))))
           ((eq c ?,)
            (setq address
+                 (if rawp
+                     (buffer-substring beg (point))
                  (condition-case nil
                      (ietf-drums-parse-address
                       (buffer-substring beg (point)))
-                   (error nil)))
+                     (error nil))))
            (if address (push address pairs))
            (forward-char 1)
            (setq beg (point)))
           (t
            (forward-char 1))))
        (setq address
+             (if rawp
+                 (buffer-substring beg (point))
              (condition-case nil
                  (ietf-drums-parse-address
                   (buffer-substring beg (point)))
-               (error nil)))
+                 (error nil))))
        (if address (push address pairs))
        (nreverse pairs)))))
 
@@ -274,6 +282,11 @@
       (concat "\"" string "\"")
     string))
 
+(defun ietf-drums-make-address (name address)
+  (if name
+      (concat (ietf-drums-quote-string name) " <" address ">")
+    address))
+
 (provide 'ietf-drums)
 
 ;;; arch-tag: 379a0191-dbae-4ca6-a0f5-d4202c209ef9




reply via email to

[Prev in Thread] Current Thread [Next in Thread]