diff lisp/gnus/compface.el @ 72425:4fa1b5c6a34c

Merge from gnus--rel--5.10 Patches applied: * gnus--rel--5.10 (patch 123-125) - Update from CVS 2006-08-09 Katsumi Yamaoka <yamaoka@jpl.org> * lisp/gnus/compface.el (uncompface): Use binary rather than raw-text-unix. 2006-08-09 Katsumi Yamaoka <yamaoka@jpl.org> * lisp/gnus/compface.el (uncompface): Make sure the eol conversion doesn't take place when communicating with the external programs. Reported by ARISAWA Akihiro <ari@mbf.ocn.ne.jp>. 2006-07-31 Katsumi Yamaoka <yamaoka@jpl.org> * lisp/gnus/nnheader.el (nnheader-insert-head): Fix typo in comment. 2006-07-31 Andreas Seltenreich <uwi7@rz.uni-karlsruhe.de> * lisp/gnus/nnweb.el (nnweb-google-parse-1): Update regexp for author and date. Make it more robust by parsing author and date independently. Revision: emacs@sv.gnu.org/emacs--devo--0--patch-398
author Miles Bader <miles@gnu.org>
date Wed, 16 Aug 2006 14:04:41 +0000
parents 1077b8039c32
children e3694f1cb928
line wrap: on
line diff
--- a/lisp/gnus/compface.el	Wed Aug 16 12:33:12 2006 +0000
+++ b/lisp/gnus/compface.el	Wed Aug 16 14:04:41 2006 +0000
@@ -34,24 +34,28 @@
 or `faces-xface' and `netpbm' or `libgr-progs', for instance."
   (with-temp-buffer
     (insert face)
-    (and (eq 0 (apply 'call-process-region (point-min) (point-max)
-		      "uncompface"
-		      'delete '(t nil) nil))
-	 (progn
-	   (goto-char (point-min))
-	   (insert "/* Width=48, Height=48 */\n")
-	   ;; I just can't get "icontopbm" to work correctly on its
-	   ;; own in XEmacs.  And Emacs doesn't understand un-raw pbm
-	   ;; files.
-	   (if (not (featurep 'xemacs))
-	       (eq 0 (call-process-region (point-min) (point-max)
-					  "icontopbm"
-					  'delete '(t nil)))
-	     (shell-command-on-region (point-min) (point-max)
-				      "icontopbm | pnmnoraw"
-				      (current-buffer) t)
-	     t))
-	 (buffer-string))))
+    (let ((coding-system-for-read 'raw-text)
+	  ;; At least "icontopbm" doesn't work with Windows because
+	  ;; the line-break code is converted into CRLF by default.
+	  (coding-system-for-write 'binary))
+      (and (eq 0 (apply 'call-process-region (point-min) (point-max)
+			"uncompface"
+			'delete '(t nil) nil))
+	   (progn
+	     (goto-char (point-min))
+	     (insert "/* Width=48, Height=48 */\n")
+	     ;; I just can't get "icontopbm" to work correctly on its
+	     ;; own in XEmacs.  And Emacs doesn't understand un-raw pbm
+	     ;; files.
+	     (if (not (featurep 'xemacs))
+		 (eq 0 (call-process-region (point-min) (point-max)
+					    "icontopbm"
+					    'delete '(t nil)))
+	       (shell-command-on-region (point-min) (point-max)
+					"icontopbm | pnmnoraw"
+					(current-buffer) t)
+	       t))
+	   (buffer-string)))))
 
 (provide 'compface)