diff options
Diffstat (limited to 'lisp/epg.el')
-rw-r--r-- | lisp/epg.el | 10 |
1 files changed, 7 insertions, 3 deletions
diff --git a/lisp/epg.el b/lisp/epg.el index 84a4512b9ff..7bec91f616d 100644 --- a/lisp/epg.el +++ b/lisp/epg.el @@ -595,7 +595,12 @@ callback data (if any)." (if (epg-context-textmode context) '("--textmode")) (if (epg-context-output-file context) (list "--output" (epg-context-output-file context))) - (if (epg-context-pinentry-mode context) + (if (and (epg-context-pinentry-mode context) + (not + ;; loopback doesn't work with gpgsm + (and (eq (epg-context-protocol context) 'CMS) + (eq (epg-context-pinentry-mode context) + 'loopback)))) (list "--pinentry-mode" (symbol-name (epg-context-pinentry-mode context)))) @@ -1264,8 +1269,7 @@ callback data (if any)." keys string field index) (if name (progn - (unless (listp name) - (setq name (list name))) + (setq name (ensure-list name)) (while name (setq args (append args (list list-keys-option (car name))) name (cdr name)))) |