bug-gnu-emacs
[Top][All Lists]
Advanced

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

bug#16679: 24.3.50; can't create a newly encrypted gpg file with easypg


From: Jason Lewis
Subject: bug#16679: 24.3.50; can't create a newly encrypted gpg file with easypg in cygwin emacs
Date: Tue, 11 Feb 2014 10:04:50 +1100
User-agent: Mozilla/5.0 (Windows; U; Windows NT 5.1; en-GB; rv:1.8.1.23) Gecko/20090812 Lightning/0.9 Thunderbird/2.0.0.23 Mnenhy/0.7.5.0

Eli Zaretskii wrote, On 9/02/2014 1:18 AM:
>> Date: Sat, 08 Feb 2014 21:05:21 +1100
>> From: Jason Lewis <jason@dickson.st>
>> CC: 16679@debbugs.gnu.org
>>
>> Because I like to live life on the edge, I decided to mount my user
>> directory from my drive D:, following a procedure much like this one:
>>
>> http://caskater4.blogspot.com.au/2007/09/moving-your-data-where-you-want-in.html
>>
>> something like this:
>>
>>  1. xcopy /E /H /O /X /Y /I C:\Users D:\Users
>>  2. rmdir /S /Q C:\Users
>>  3. rmdir "C:\Documents and Settings"
>>  4. mklink /J C:\Users D:\Users
>>  5. mklink /J "C:\Documents and Settings" D:\Users
>>
>> I'm not in front of that computer right now but that sounds as though it
>> has something to do with it.
> Are you sure every program you use, starting with Emacs, fully
> supports directory junction points created like that?
>

I've not encountered any problems with directory junctions yet. I've
been running it like this for at least 6 months.

I tested again by trying to creating a file on /cygdrive/c/Temp which is
not on the junctioned drive and received the same error.

backtrace:

Debugger entered--Lisp error: (file-error "Opening output file" stringp nil)
  signal(file-error ("Opening output file" stringp nil))
  (condition-case error (setq string (epg-encrypt-string context (if
(stringp start) (epa-file--encode-coding-string start coding-system) (if
start nil (setq start (point-min) end (point-max))) (setq buffer
(current-buffer)) (let ((temp-buffer (generate-new-buffer " *temp*")))
(save-current-buffer (set-buffer temp-buffer) (unwind-protect (progn ...
... ...) (and ... ...))))) (if (or (eq epa-file-select-keys t) (and
(null epa-file-select-keys) (not (local-variable-p ... ...))))
(epa-select-keys context "Select recipients for encryption.\nIf no one
is selected, symmetric encryption will be performed.  " recipients) (if
epa-file-encrypt-to (epg-list-keys context recipients))))) (error (if
(setq entry (assoc file epa-file-passphrase-alist)) (setcdr entry nil))
(signal (quote file-error) (cons "Opening output file" (cdr error)))))
  (let* ((coding-system (or coding-system-for-write (if (fboundp (quote
select-safe-coding-system)) (let ((buffer-file-name ...))
(select-safe-coding-system (point-min) (point-max)))
buffer-file-coding-system))) (context (epg-make-context))
(coding-system-for-write (quote binary)) string entry (recipients (cond
((listp epa-file-encrypt-to) epa-file-encrypt-to) ((stringp
epa-file-encrypt-to) (list epa-file-encrypt-to)))) buffer)
(epg-context-set-passphrase-callback context (cons (function
epa-file-passphrase-callback-function) file))
(epg-context-set-progress-callback context (cons (function
epa-progress-callback-function) (format "Encrypting %s" file)))
(epg-context-set-armor context epa-armor) (condition-case error (setq
string (epg-encrypt-string context (if (stringp start)
(epa-file--encode-coding-string start coding-system) (if start nil (setq
start (point-min) end (point-max))) (setq buffer (current-buffer)) (let
((temp-buffer ...)) (save-current-buffer (set-buffer temp-buffer)
(unwind-protect ... ...)))) (if (or (eq epa-file-select-keys t) (and
(null epa-file-select-keys) (not ...))) (epa-select-keys context "Select
recipients for encryption.\nIf no one is selected, symmetric encryption
will be performed.  " recipients) (if epa-file-encrypt-to (epg-list-keys
context recipients))))) (error (if (setq entry (assoc file
epa-file-passphrase-alist)) (setcdr entry nil)) (signal (quote
file-error) (cons "Opening output file" (cdr error)))))
(epa-file-run-real-handler (function write-region) (list string nil file
append visit lockname mustbenew)) (if (boundp (quote
last-coding-system-used)) (setq last-coding-system-used coding-system))
(if (eq visit t) (progn (setq buffer-file-name file)
(set-visited-file-modtime)) (if (stringp visit) (progn
(set-visited-file-modtime) (setq buffer-file-name visit)))) (if (or (eq
visit t) (eq visit nil) (stringp visit)) (message "Wrote %s"
buffer-file-name)))
  epa-file-write-region(nil nil "/cygdrive/c/Temp/test.gpg" nil t)
  apply(epa-file-write-region (nil nil "/cygdrive/c/Temp/test.gpg" nil t))
  (if op (apply op args) (epa-file-run-real-handler operation args))
  (let ((op (get operation (quote epa-file)))) (if op (apply op args)
(epa-file-run-real-handler operation args)))
  (progn (let ((op (get operation (quote epa-file)))) (if op (apply op
args) (epa-file-run-real-handler operation args))))
  (unwind-protect (progn (let ((op (get operation (quote epa-file))))
(if op (apply op args) (epa-file-run-real-handler operation args))))
(set-match-data save-match-data-internal (quote evaporate)))
  (let ((save-match-data-internal (match-data))) (unwind-protect (progn
(let ((op (get operation (quote epa-file)))) (if op (apply op args)
(epa-file-run-real-handler operation args)))) (set-match-data
save-match-data-internal (quote evaporate))))
  epa-file-handler(write-region nil nil "/cygdrive/c/Temp/test.gpg" nil t)
  write-region(nil nil "/cygdrive/c/Temp/test.gpg" nil t
"/cygdrive/c/Temp/test.gpg")
  basic-save-buffer-2()
  basic-save-buffer-1()
  basic-save-buffer()
  save-buffer(1)
  #<subr call-interactively>(save-buffer nil nil)
  funcall(#<subr call-interactively> save-buffer nil nil)
  (with-no-warnings (funcall ad--addoit-function function record-flag keys))
  (setq ad-return-value (with-no-warnings (funcall ad--addoit-function
function record-flag keys)))
  (let ((ido-ubiquitous-next-override
(ido-ubiquitous-get-command-override function))) (setq ad-return-value
(with-no-warnings (funcall ad--addoit-function function record-flag keys))))
  (ido-ubiquitous-with-override (ido-ubiquitous-get-command-override
function) (setq ad-return-value (with-no-warnings (funcall
ad--addoit-function function record-flag keys))))
  (let (ad-return-value) (ido-ubiquitous-with-override
(ido-ubiquitous-get-command-override function) (setq ad-return-value
(with-no-warnings (funcall ad--addoit-function function record-flag
keys)))) ad-return-value)
  ad-Advice-call-interactively(#<subr call-interactively> save-buffer
nil nil)
  apply(ad-Advice-call-interactively #<subr call-interactively>
(save-buffer nil nil))
  call-interactively(save-buffer nil nil)
  command-execute(save-buffer)


-- 
Jason Lewis
http://emacstragic.net


Attachment: signature.asc
Description: OpenPGP digital signature


reply via email to

[Prev in Thread] Current Thread [Next in Thread]