all messages for Emacs-related lists mirrored at yhetil.org
 help / color / mirror / code / Atom feed
From: "Eli Zaretskii" <eliz@gnu.org>
Cc: emacs-devel@gnu.org
Subject: Re: executable-find in files.el
Date: Thu, 12 May 2005 16:14:11 +0300	[thread overview]
Message-ID: <01c556f4$Blat.v2.4$a2333100@zahav.net.il> (raw)
In-Reply-To: <8764xo39nx.fsf-monnier+emacs@gnu.org> (message from Stefan Monnier on Thu, 12 May 2005 08:42:32 -0400)

> Cc: emacs-devel@gnu.org
> From: Stefan Monnier <monnier@iro.umontreal.ca>
> Date: Thu, 12 May 2005 08:42:32 -0400
> 
> >   . on Windows, check_executable uses stat to verify executability
> >   . on Posix systems, check_executable uses euidaccess if it's available
> >   . by contrast, openp always uses access
> 
> > These are subtle differences, but they are real.
> 
> These are too subtle for me, indeed.  Are you saying that:
> 1- call-process on w32 doesn't use check_executable but should
> 2- are you saying that call-process on w32 does use check_executable whereas
>    a "1" arg to locate-file doesn't, and thus that a `file-executable-p' arg
>    to locate-file better mimicks call-process on w32.
> 
> If (1), it's beyond the scope of my patch.

I don't think the Windows port does something special inside
`call-process', I think it uses `openp' as every other platform, and
thus does _not_ use `check_executable' and what's in it.

What I'm saying is that `stat' and `access' on Windows might yield
different results (someone with more knowledge about Windows internals
than I have should give a definitive answer to that).  More
importantly, Posix platforms which have `euidaccess' will behave
differently in these two cases, because AFAIK, `euidaccess' and
`access' might yield different results.

I don't know enough about intricacies of `access' and `euidaccess' to
tell which one is TRT for us, but I do think that both `openp' and
`check_executable' should use the same code, whichever we think is the
right one.  (That is, unless someone explains why using `access' in
some cases and `euidaccess' in others _is_ TRT.)

As long as `file-executable-p' and `call-process' use these different
methods, your change to `executable-find' is an incompatible one,
albeit only in some rare situations.

  reply	other threads:[~2005-05-12 13:14 UTC|newest]

Thread overview: 20+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
     [not found] <E1DVuFh-0001h1-GE@monty-python.gnu.org>
2005-05-11 18:29 ` executable-find in files.el Eli Zaretskii
2005-05-11 19:07   ` Stefan Monnier
2005-05-11 22:56     ` Eli Zaretskii
2005-05-11 23:16       ` Stefan Monnier
2005-05-11 23:50         ` David Kastrup
2005-05-12  1:31           ` Stefan Monnier
2005-05-12  6:34         ` Eli Zaretskii
2005-05-12 12:42           ` Stefan Monnier
2005-05-12 13:14             ` Eli Zaretskii [this message]
2005-05-14 14:58     ` Michael Albinus
2005-05-15  0:21       ` Richard Stallman
2005-05-16 19:27         ` Michael Albinus
2005-05-16 22:38           ` Stefan Monnier
2005-05-17 22:03             ` Kim F. Storm
2005-05-17 22:23               ` Stefan Monnier
2005-05-18 13:08                 ` Richard Stallman
2005-05-17  4:36           ` Richard Stallman
2005-05-17 16:32             ` Michael Albinus
2005-05-18  5:19               ` Richard Stallman
2005-05-18 13:08           ` Richard Stallman

Reply instructions:

You may reply publicly to this message via plain-text email
using any one of the following methods:

* Save the following mbox file, import it into your mail client,
  and reply-to-all from there: mbox

  Avoid top-posting and favor interleaved quoting:
  https://en.wikipedia.org/wiki/Posting_style#Interleaved_style

* Reply using the --to, --cc, and --in-reply-to
  switches of git-send-email(1):

  git send-email \
    --in-reply-to='01c556f4$Blat.v2.4$a2333100@zahav.net.il' \
    --to=eliz@gnu.org \
    --cc=emacs-devel@gnu.org \
    /path/to/YOUR_REPLY

  https://kernel.org/pub/software/scm/git/docs/git-send-email.html

* If your mail client supports setting the In-Reply-To header
  via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line before the message body.
Code repositories for project(s) associated with this external index

	https://git.savannah.gnu.org/cgit/emacs.git
	https://git.savannah.gnu.org/cgit/emacs/org-mode.git

This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.