Importing Pterodactyl Gnus v0.97.
[elisp/gnus.git-] / lisp / gnus-util.el
index 350926c..532429b 100644 (file)
@@ -688,7 +688,7 @@ with potentially long computations."
       ;; Decide whether to append to a file or to an Emacs buffer.
       (let ((outbuf (get-file-buffer filename)))
        (if (not outbuf)
-           (append-to-file (point-min) (point-max) filename)
+           (mm-append-to-file (point-min) (point-max) filename)
          ;; File has been visited, in buffer OUTBUF.
          (set-buffer outbuf)
          (let ((buffer-read-only nil)
@@ -756,7 +756,7 @@ with potentially long computations."
                    (insert "\n"))
                  (insert "\n"))
                (goto-char (point-max))
-               (append-to-file (point-min) (point-max) filename)))
+               (mm-append-to-file (point-min) (point-max) filename)))
          ;; File has been visited, in buffer OUTBUF.
          (set-buffer outbuf)
          (let ((buffer-read-only nil))
@@ -816,9 +816,12 @@ ARG is passed to the first function."
            (if (eq (char-after) ?#)
                (goto-char (point-max))
              (unless (eobp)
-               (setq elem (buffer-substring
-                           (point) (progn (skip-chars-forward "^\t ")
-                                          (point))))
+               (setq elem
+                     (if (= (following-char) ?\")
+                         (read (current-buffer))
+                       (buffer-substring
+                        (point) (progn (skip-chars-forward "^\t ")
+                                       (point)))))
                (cond
                 ((equal elem "macdef")
                  ;; We skip past the macro definition.
@@ -936,7 +939,7 @@ ARG is passed to the first function."
        (throw 'found nil)))
     t))
 
-(defun gnus-write-active-file (file hashtb)
+(defun gnus-write-active-file (file hashtb &optional full-names)
   (with-temp-file file
     (mapatoms
      (lambda (sym)
@@ -944,7 +947,9 @@ ARG is passed to the first function."
                  (boundp sym)
                  (symbol-value sym))
         (insert (format "%s %d %d y\n"
-                        (gnus-group-real-name (symbol-name sym)) 
+                        (if full-names
+                            (symbol-name sym)
+                          (gnus-group-real-name (symbol-name sym)))
                         (cdr (symbol-value sym))
                         (car (symbol-value sym))))))
      hashtb)))