GNU bug report logs - #29070
26.0.90; (file-attributes dir) => nil, even though (and (file-exists-p dir) (file-directory-p dir)) => t

Previous Next

Package: emacs;

Reported by: rrandresf <at> gmail.com

Date: Mon, 30 Oct 2017 20:03:01 UTC

Severity: normal

Found in version 26.0.90

Done: Andreas Schwab <schwab <at> linux-m68k.org>

Bug is archived. No further changes may be made.

Full log


Message #26 received at 29070 <at> debbugs.gnu.org (full text, mbox):

From: Noam Postavsky <npostavs <at> users.sourceforge.net>
To: andrés ramírez <rrandresf <at> gmail.com>
Cc: 29070 <at> debbugs.gnu.org
Subject: Re: bug#29070: 26.0.90; emacs-26.0.90 pretest
Date: Mon, 30 Oct 2017 19:52:22 -0400
andrés ramírez <rrandresf <at> gmail.com> writes:

> Noam above was wrong: what I got was nil (tried it on another emacs,
> sorry)


> btw: I have done also (setq server-name "pe")
>
> Debugger entered--Lisp error: (error "‘/tmp/emacs1000’ is not a safe directory because it is a file")
>   signal(error ("‘/tmp/emacs1000’ is not a safe directory because it is a file"))
>   error("`%s' is not a safe directory because %s" "/tmp/emacs1000" "it is a file")
>   (progn (error "`%s' is not a safe directory because %s" dir unsafe))
>   (if unsafe (progn (error "`%s' is not a safe directory because %s" dir unsafe)))
>   (let* ((uid (nth 2 attrs)) (w32 (eq system-type 'windows-nt))...
>     dir = "/tmp/emacs1000"
>     attrs = nil

Hmm, I think that means it doesn't exist (could you double check that by
running 'ls /tmp/emacs1000' in the shell?).  Since
server-ensure-safe-dir tries to create it if it doesn't exist, something
must be deleting it directly after, does that sound plausible?

>     uid = nil
>     w32 = nil
>     unsafe = "it is a file"
>   (let ((attrs (file-attributes dir 'integer))) (if attrs nil (let...
>     dir = "/tmp/emacs1000"
>     attrs = nil
>   server-ensure-safe-dir("/tmp/emacs1000")
>   (if leave-dead...
>   (let* ((server-dir ...
>     leave-dead = nil
>     inhibit-prompt = nil
>     server-dir = "/tmp/emacs1000"
>     server-file = "/tmp/emacs1000/pe"
>   (progn (let* ((server-...
>     [no locals]
>   (if (or (not server-clien...
>   server-start(nil)
>   funcall-interactively(server-start nil)
>   call-interactively(server-start record nil)
>   command-execute(server-start record)
>   execute-extended-command(nil "server-start" "server-start")
>   funcall-interactively(execute-extended-command nil "server-start" "server-start")
>   call-interactively(execute-extended-command nil nil)
>   command-execute(execute-extended-command)




This bug report was last modified 7 years and 203 days ago.

Previous Next


GNU bug tracking system
Copyright (C) 1999 Darren O. Benham, 1997,2003 nCipher Corporation Ltd, 1994-97 Ian Jackson.