From: ueno Date: Thu, 8 Mar 2007 11:46:52 +0000 (+0000) Subject: Undo the last change. X-Git-Tag: plaintext-branchpoint X-Git-Url: http://git.chise.org/cgi-bin/gitweb.cgi?a=commitdiff_plain;h=14f5c51ac80eec1a08ff5c2792c65d98922f765e;p=elisp%2Fepg.git Undo the last change. --- diff --git a/ChangeLog b/ChangeLog index 1240230..96c1ed7 100644 --- a/ChangeLog +++ b/ChangeLog @@ -1,15 +1,6 @@ 2007-03-08 Daiki Ueno * epg.el (epg-list-keys): Parse GnuPG's print_string escape. - (epg-wait-for-plaintext): New function. - (epg--status-PLAINTEXT_LENGTH): New function. - (epg-decrypt-string): Don't use a temp output file. - (epg--status-BEGIN_DECRYPTION): New function; reset 'plaintext - result. - (epg--status-DECRYPTION_OKAY): Copy 'plaintext result to - 'decrypted-plaintext. - (epg-verify-file): Don't use a temp output file. - (epg-verify-string): Ditto. 2007-03-08 Daiki Ueno diff --git a/epg.el b/epg.el index 63d40b5..5a3ce86 100644 --- a/epg.el +++ b/epg.el @@ -1120,7 +1120,6 @@ This function is for internal use only." args))) (set-default-file-modes orig-mode)) (set-process-filter process #'epg--process-filter) - (set-process-sentinel process #'ignore) (epg-context-set-process context process))) (defun epg--process-filter (process input) @@ -1148,17 +1147,14 @@ This function is for internal use only." (string (match-string 2)) (symbol (intern-soft (concat "epg--status-" status)))) - (forward-line) - (setq epg-read-point (point)) (if (member status epg-pending-status-list) (setq epg-pending-status-list nil)) (if (and symbol (fboundp symbol)) (funcall symbol epg-context string)) - (goto-char epg-read-point) - (setq epg-last-status (cons status string))) - (forward-line) - (setq epg-read-point (point))))) + (setq epg-last-status (cons status string)))) + (forward-line) + (setq epg-read-point (point)))) (setq epg-process-filter-running nil)))))) (defun epg-read-output (context) @@ -1184,12 +1180,6 @@ This function is for internal use only." (while (eq (process-status (epg-context-process context)) 'run) (accept-process-output (epg-context-process context) 1))) -(defun epg-wait-for-plaintext (context length) - "Wait data from the `epg-gpg-program' process." - (while (and (eq (process-status (epg-context-process context)) 'run) - (< (- (point-max) epg-read-point) length)) - (accept-process-output (epg-context-process context) 1))) - (defun epg-reset (context) "Reset the CONTEXT." (if (and (epg-context-process context) @@ -1497,27 +1487,11 @@ This function is for internal use only." (if (consp (epg-context-progress-callback context)) (cdr (epg-context-progress-callback context)))))) -(defun epg--status-BEGIN_DECRYPTION (context string) - (epg-context-set-result-for context 'plaintext nil)) - (defun epg--status-DECRYPTION_FAILED (context string) (epg-context-set-result-for context 'decryption-failed t)) (defun epg--status-DECRYPTION_OKAY (context string) - (epg-context-set-result-for context 'decryption-okay t) - (epg-context-set-result-for - context - 'decrypted-plaintext - (epg-context-result-for context 'plaintext))) - -(defun epg--status-PLAINTEXT_LENGTH (context string) - (when (string-match "\\`\\([0-9]+\\)" string) - (let ((length (string-to-number (match-string 1 string)))) - (epg-wait-for-plaintext context length) - (epg-context-set-result-for - context 'plaintext - (buffer-substring epg-read-point - (setq epg-read-point (+ epg-read-point length))))))) + (epg-context-set-result-for context 'decryption-okay t)) (defun epg--status-NODATA (context string) (epg-context-set-result-for @@ -1971,10 +1945,13 @@ If PLAIN is nil, it returns the result as a string." (unwind-protect (progn (write-region cipher nil input-file nil 'quiet) + (epg-context-set-output-file context + (epg--make-temp-file "epg-output")) (epg-start-decrypt context (epg-make-data-from-file input-file)) (epg-wait-for-completion context) (epg--check-error-for-decrypt context) - (epg-context-result-for context 'decrypted-plaintext)) + (epg-read-output context)) + (epg-delete-output-file context) (if (file-exists-p input-file) (delete-file input-file)) (epg-reset context)))) @@ -2028,7 +2005,9 @@ stored into the file after successful verification." (unwind-protect (progn (if plain - (epg-context-set-output-file context plain)) + (epg-context-set-output-file context plain) + (epg-context-set-output-file context + (epg--make-temp-file "epg-output"))) (if signed-text (epg-start-verify context (epg-make-data-from-file signature) @@ -2037,7 +2016,9 @@ stored into the file after successful verification." (epg-make-data-from-file signature))) (epg-wait-for-completion context) (unless plain - (epg-context-result-for context 'plaintext))) + (epg-read-output context))) + (unless plain + (epg-delete-output-file context)) (epg-reset context))) ;;;###autoload @@ -2053,6 +2034,8 @@ successful verification." input-file) (unwind-protect (progn + (epg-context-set-output-file context + (epg--make-temp-file "epg-output")) (if signed-text (progn (setq input-file (epg--make-temp-file "epg-signature")) @@ -2062,7 +2045,8 @@ successful verification." (epg-make-data-from-string signed-text))) (epg-start-verify context (epg-make-data-from-string signature))) (epg-wait-for-completion context) - (epg-context-result-for context 'plaintext)) + (epg-read-output context)) + (epg-delete-output-file context) (if (and input-file (file-exists-p input-file)) (delete-file input-file))