GNU bug report logs - #2211
server-socket-dir and make-temp-file

Previous Next

Package: emacs;

Reported by: "Roland Winkler" <Roland.Winkler <at> physik.uni-erlangen.de>

Date: Thu, 5 Feb 2009 17:35:03 UTC

Severity: normal

Done: Chong Yidong <cyd <at> stupidchicken.com>

Bug is archived. No further changes may be made.

To add a comment to this bug, you must first unarchive it, by sending
a message to control AT debbugs.gnu.org, with unarchive 2211 in the body.
You can then email your comments to 2211 AT debbugs.gnu.org in the normal way.

Toggle the display of automated, internal messages from the tracker.

View this report as an mbox folder, status mbox, maintainer mbox


Report forwarded to bug-submit-list <at> lists.donarmstrong.com, Emacs Bugs <bug-gnu-emacs <at> gnu.org>:
bug#2211; Package emacs. (Thu, 05 Feb 2009 17:35:03 GMT) Full text and rfc822 format available.

Acknowledgement sent to "Roland Winkler" <Roland.Winkler <at> physik.uni-erlangen.de>:
New bug report received and forwarded. Copy sent to Emacs Bugs <bug-gnu-emacs <at> gnu.org>. (Thu, 05 Feb 2009 17:35:03 GMT) Full text and rfc822 format available.

Message #5 received at submit <at> emacsbugs.donarmstrong.com (full text, mbox):

From: "Roland Winkler" <Roland.Winkler <at> physik.uni-erlangen.de>
To: bug-gnu-emacs <at> gnu.org
Subject: server-socket-dir and make-temp-file
Date: Thu, 05 Feb 2009 18:28:19 +0100
server-socket-dir is by default a directory in /tmp. With CVS emacs
it also takes the TMPDIR environment variable into account.
Shouldn't this variable be initialized using make-temp-file so that
it obeys any customization of temporary-file-directory?

Actually, I ran the following command in the emacs directory
$ grep "\"/tmp\"" lisp/*el lisp/*/*el
Browsing through the matches, it seems to me that
pmail-mime-attachment-dirs-alist and url-temporary-directory
should be updated, too.

A related issue: I do not quite understand a piece of code like

  (make-temp-file
   (concat (file-name-as-directory
            (or (getenv "TMPDIR") "/tmp"))
            "artist-stdin."))

used in the function artist-system. If the PREFIX arg of
make-temp-file is an absolute directory as in the example above,
make-temp-file will ignore any user customization of
temporary-file-directory. The function ps-run-make-tmp-filename
behaves similarly.


In GNU Emacs 22.2.1 (i686-pc-linux-gnu, X toolkit, Xaw3d scroll bars)
 of 2008-03-27 on tfkp07





Information forwarded to bug-submit-list <at> lists.donarmstrong.com, Emacs Bugs <bug-gnu-emacs <at> gnu.org>:
bug#2211; Package emacs. (Thu, 05 Feb 2009 20:00:04 GMT) Full text and rfc822 format available.

Acknowledgement sent to Stefan Monnier <monnier <at> iro.umontreal.ca>:
Extra info received and forwarded to list. Copy sent to Emacs Bugs <bug-gnu-emacs <at> gnu.org>. (Thu, 05 Feb 2009 20:00:04 GMT) Full text and rfc822 format available.

Message #10 received at 2211 <at> emacsbugs.donarmstrong.com (full text, mbox):

From: Stefan Monnier <monnier <at> iro.umontreal.ca>
To: Roland Winkler <Roland.Winkler <at> physik.uni-erlangen.de>
Cc: 2211 <at> debbugs.gnu.org
Subject: Re: bug#2211: server-socket-dir and make-temp-file
Date: Thu, 05 Feb 2009 14:51:02 -0500
> server-socket-dir is by default a directory in /tmp. With CVS emacs
> it also takes the TMPDIR environment variable into account.
> Shouldn't this variable be initialized using make-temp-file so that
> it obeys any customization of temporary-file-directory?

No, because emacsclient needs to access server-socket-dir but doesn't
read the .emacs so can't adapt to changes in temporary-file-directory
(it does pay attention to $TMPDIR, on the other hand).

> Actually, I ran the following command in the emacs directory
> $ grep "\"/tmp\"" lisp/*el lisp/*/*el
> Browsing through the matches, it seems to me that
> pmail-mime-attachment-dirs-alist and url-temporary-directory
> should be updated, too.

You're probably right on these ones.

> A related issue: I do not quite understand a piece of code like

>   (make-temp-file
>    (concat (file-name-as-directory
>             (or (getenv "TMPDIR") "/tmp"))
>             "artist-stdin."))

> used in the function artist-system. If the PREFIX arg of
> make-temp-file is an absolute directory as in the example above,
> make-temp-file will ignore any user customization of
> temporary-file-directory. The function ps-run-make-tmp-filename
> behaves similarly.

At first, I was going to say that

     (concat (file-name-as-directory
              (or (getenv "TMPDIR") "/tmp"))
             "artist-stdin.")

should be replaced by

     (expand-file-name "artist-stdin." (or (getenv "TMPDIR") "/tmp"))

but indeed, it's better to just skip it all and let `make-temp-file' use
temporary-file-directory.


        Stefan






Information forwarded to bug-submit-list <at> lists.donarmstrong.com, Emacs Bugs <bug-gnu-emacs <at> gnu.org>:
bug#2211; Package emacs. (Sat, 07 Feb 2009 16:40:04 GMT) Full text and rfc822 format available.

Acknowledgement sent to "Roland Winkler" <Roland.Winkler <at> physik.uni-erlangen.de>:
Extra info received and forwarded to list. Copy sent to Emacs Bugs <bug-gnu-emacs <at> gnu.org>. (Sat, 07 Feb 2009 16:40:04 GMT) Full text and rfc822 format available.

Message #15 received at 2211 <at> emacsbugs.donarmstrong.com (full text, mbox):

From: "Roland Winkler" <Roland.Winkler <at> physik.uni-erlangen.de>
To: Stefan Monnier <monnier <at> iro.umontreal.ca>
Cc: 2211 <at> debbugs.gnu.org
Subject: Re: bug#2211: server-socket-dir and make-temp-file
Date: Sat, 7 Feb 2009 17:32:59 +0100
On Thu Feb 5 2009 Stefan Monnier wrote:
> > server-socket-dir is by default a directory in /tmp. With CVS emacs
> > it also takes the TMPDIR environment variable into account.
> > Shouldn't this variable be initialized using make-temp-file so that
> > it obeys any customization of temporary-file-directory?
> 
> No, because emacsclient needs to access server-socket-dir but doesn't
> read the .emacs so can't adapt to changes in temporary-file-directory
> (it does pay attention to $TMPDIR, on the other hand).

Thanks, I see. The lisp code defining server-socket-dir for emacs
matches a corresponding piece of C code in emacsclient.c

> > Actually, I ran the following command in the emacs directory
> > $ grep "\"/tmp\"" lisp/*el lisp/*/*el
> > Browsing through the matches, it seems to me that
> > pmail-mime-attachment-dirs-alist and url-temporary-directory
> > should be updated, too.
> 
> You're probably right on these ones.

I could update those. Yet I just realized that emacs 23 is already
in pretest. Is this the kind of thing that should be changed
nonethless or should I better wait?

> At first, I was going to say that
> 
>      (concat (file-name-as-directory
>               (or (getenv "TMPDIR") "/tmp"))
>              "artist-stdin.")
> 
> should be replaced by
> 
>      (expand-file-name "artist-stdin." (or (getenv "TMPDIR") "/tmp"))
> 
> but indeed, it's better to just skip it all and let `make-temp-file' use
> temporary-file-directory.

Same for these changes: better do them now or wait?

Thanks,

Roland




Information forwarded to bug-submit-list <at> lists.donarmstrong.com, Emacs Bugs <bug-gnu-emacs <at> gnu.org>:
bug#2211; Package emacs. (Sat, 07 Feb 2009 21:25:04 GMT) Full text and rfc822 format available.

Acknowledgement sent to Stefan Monnier <monnier <at> iro.umontreal.ca>:
Extra info received and forwarded to list. Copy sent to Emacs Bugs <bug-gnu-emacs <at> gnu.org>. (Sat, 07 Feb 2009 21:25:04 GMT) Full text and rfc822 format available.

Message #20 received at 2211 <at> emacsbugs.donarmstrong.com (full text, mbox):

From: Stefan Monnier <monnier <at> iro.umontreal.ca>
To: "Roland Winkler" <Roland.Winkler <at> physik.uni-erlangen.de>
Cc: 2211 <at> debbugs.gnu.org
Subject: Re: bug#2211: server-socket-dir and make-temp-file
Date: Sat, 07 Feb 2009 16:15:42 -0500
> Thanks, I see.  The lisp code defining server-socket-dir for Emacs
> matches a corresponding piece of C code in emacsclient.c

It deserves a comment (in both places), indeed.

>> You're probably right on these ones.
> I could update those. Yet I just realized that emacs 23 is already
> in pretest. Is this the kind of thing that should be changed
> nonethless or should I better wait?

I'd rather postpone those things to 23.2.


        Stefan




Reply sent to Chong Yidong <cyd <at> stupidchicken.com>:
You have taken responsibility. (Sat, 07 Feb 2009 22:05:05 GMT) Full text and rfc822 format available.

Notification sent to "Roland Winkler" <Roland.Winkler <at> physik.uni-erlangen.de>:
bug acknowledged by developer. (Sat, 07 Feb 2009 22:05:06 GMT) Full text and rfc822 format available.

Message #25 received at 2211-done <at> emacsbugs.donarmstrong.com (full text, mbox):

From: Chong Yidong <cyd <at> stupidchicken.com>
To: "Roland Winkler" <Roland.Winkler <at> physik.uni-erlangen.de>
Cc: 2211-done <at> debbugs.gnu.org
Subject: Re: bug#2211: server-socket-dir and make-temp-file
Date: Sat, 07 Feb 2009 16:58:46 -0500
> I could update those. Yet I just realized that emacs 23 is already in
> pretest. Is this the kind of thing that should be changed nonethless
> or should I better wait?

I think it's better to fix these now.  I've just done that.  Thanks for
finding the problem.




bug archived. Request was from Debbugs Internal Request <help-debbugs <at> gnu.org> to internal_control <at> emacsbugs.donarmstrong.com. (Sun, 08 Mar 2009 14:24:10 GMT) Full text and rfc822 format available.

This bug report was last modified 16 years and 167 days ago.

Previous Next


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