X-Git-Url: http://git.chise.org/gitweb/?a=blobdiff_plain;f=pgg-pgp.el;h=a09e60c3941e242dc8fbcfec2a1f7a35f61ffe6c;hb=fddb14845c4276bb42707adb26d4106c219c9469;hp=159098f7cc05595f1586659dedf91b4db9e71dfc;hpb=9508f6e75dac82936bfb331c6bc056285f901c08;p=elisp%2Fsemi.git diff --git a/pgg-pgp.el b/pgg-pgp.el index 159098f..a09e60c 100644 --- a/pgg-pgp.el +++ b/pgg-pgp.el @@ -25,6 +25,7 @@ ;;; Code: +(require 'mel) ; binary-to-text-funcall, binary-write-decoded-region (eval-when-compile (require 'pgg)) (defgroup pgg-pgp () @@ -76,6 +77,7 @@ Bourne shell or its equivalent \(not tcsh) is needed for \"2>\"." (list (concat "2>" errors-file-name)))) (shell-file-name pgg-pgp-shell-file-name) (shell-command-switch pgg-pgp-shell-command-switch) + (process-environment process-environment) (output-buffer pgg-output-buffer) (errors-buffer pgg-errors-buffer) (process-connection-type nil) @@ -87,10 +89,9 @@ Bourne shell or its equivalent \(not tcsh) is needed for \"2>\"." (setenv "PGPPASSFD" "0")) (unwind-protect (progn - (as-binary-process - (setq process - (apply #'start-process-shell-command "*PGP*" output-buffer - program args))) + (setq process + (apply #'binary-funcall #'start-process-shell-command + "*PGP*" output-buffer program args)) (set-process-sentinel process #'ignore) (when passphrase (process-send-string process (concat passphrase "\n"))) @@ -197,7 +198,7 @@ Bourne shell or its equivalent \(not tcsh) is needed for \"2>\"." (unwind-protect (progn (set-default-file-modes 448) - (write-region-as-binary start end orig-file)) + (binary-write-decoded-region start end orig-file)) (set-default-file-modes orig-mode)) (when (stringp signature) (copy-file signature (setq signature (concat orig-file ".asc"))) @@ -233,7 +234,8 @@ Bourne shell or its equivalent \(not tcsh) is needed for \"2>\"." (args (list "+verbose=1" "+batchmode" "+language=us" "-kaf" key-file))) - (write-region-as-raw-text-CRLF start end key-file) + (let ((coding-system-for-write 'raw-text-dos)) + (write-region start end key-file)) (pgg-pgp-process-region start end nil pgg-pgp-program args) (delete-file key-file) (pgg-process-when-success nil)))