Fixed error message.
[elisp/epg.git] / epg.el
diff --git a/epg.el b/epg.el
index 0deb04a..0cf9722 100644 (file)
--- a/epg.el
+++ b/epg.el
@@ -485,7 +485,7 @@ This function is for internal use only."
                       args)))
       (set-default-file-modes orig-mode))
     (set-process-filter process #'epg-process-filter)
-    (set-process-filter process #'epg-process-sentinel)
+    (set-process-sentinel process #'epg-process-sentinel)
     (epg-context-set-process context process)))
 
 (defun epg-process-filter (process input)
@@ -1235,9 +1235,14 @@ Otherwise, it makes a normal signature."
                                       (epg-make-temp-file "epg-output")))
        (epg-start-sign context (epg-make-data-from-file plain) mode)
        (epg-wait-for-completion context)
-       (if (epg-context-result-for context 'error)
-           (error "Sign failed: %S"
-                  (epg-context-result-for context 'error)))
+       (if (epg-context-result-for context 'sign)
+           (if (epg-context-result-for context 'error)
+               (message "Sign error: %S"
+                        (epg-context-result-for context 'error)))
+         (if (epg-context-result-for context 'error)
+             (error "Sign failed: %S"
+                    (epg-context-result-for context 'error))
+           (error "Sign failed")))
        (unless signature
          (epg-read-output context)))
     (unless signature
@@ -1257,9 +1262,14 @@ Otherwise, it makes a normal signature."
        (epg-start-sign context (epg-make-data-from-string plain) mode)
        (epg-flush context)
        (epg-wait-for-completion context)
-       (if (epg-context-result-for context 'error)
-           (error "Sign failed: %S"
-                  (epg-context-result-for context 'error)))
+       (if (epg-context-result-for context 'sign)
+           (if (epg-context-result-for context 'error)
+               (message "Sign error: %S"
+                        (epg-context-result-for context 'error)))
+         (if (epg-context-result-for context 'error)
+             (error "Sign failed: %S"
+                    (epg-context-result-for context 'error))
+           (error "Sign failed")))
        (epg-read-output context))
     (epg-delete-output-file context)
     (epg-reset context)))
@@ -1320,6 +1330,15 @@ If RECIPIENTS is nil, it performs symmetric encryption."
        (epg-start-encrypt context (epg-make-data-from-file plain)
                           recipients sign always-trust)
        (epg-wait-for-completion context)
+       (if sign
+           (if (epg-context-result-for context 'sign)
+               (if (epg-context-result-for context 'error)
+                   (message "Sign error: %S"
+                            (epg-context-result-for context 'error)))
+             (if (epg-context-result-for context 'error)
+                 (error "Sign failed: %S"
+                        (epg-context-result-for context 'error))
+               (error "Sign failed"))))
        (if (epg-context-result-for context 'error)
            (error "Encrypt failed: %S"
                   (epg-context-result-for context 'error)))
@@ -1342,6 +1361,15 @@ If RECIPIENTS is nil, it performs symmetric encryption."
                           recipients sign always-trust)
        (epg-flush context)
        (epg-wait-for-completion context)
+       (if sign
+           (if (epg-context-result-for context 'sign)
+               (if (epg-context-result-for context 'error)
+                   (message "Sign error: %S"
+                            (epg-context-result-for context 'error)))
+             (if (epg-context-result-for context 'error)
+                 (error "Sign failed: %S"
+                        (epg-context-result-for context 'error))
+               (error "Sign failed"))))
        (if (epg-context-result-for context 'error)
            (error "Encrypt failed: %S"
                   (epg-context-result-for context 'error)))