Subject: Re: bug#2211: server-socket-dir and make-temp-file

From: "Roland Winkler" <[email-masked]>
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