[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
Re: very wierd commit from emacs (or ntemacs) problem
From: |
Stephen Leake |
Subject: |
Re: very wierd commit from emacs (or ntemacs) problem |
Date: |
03 May 2001 15:22:48 -0400 |
User-agent: |
Gnus/5.0808 (Gnus v5.8.8) Emacs/20.6 |
"Eli Zaretskii" <eliz@is.elta.co.il> writes:
> > From: Stephen Leake <stephen.a.leake.1@gsfc.nasa.gov>
> > Date: 17 Apr 2001 15:46:25 -0400
> >
> > Eli Zaretskii <eliz@is.elta.co.il> writes:
> >
> > > On Mon, 16 Apr 2001 Chuck.Irvine@mail.sprint.com wrote:
> > >
> > > > > I suspect that the problem is with quoting the log message that is
> > > > > passed to CVS. Are you sure that Emacs invokes Bash as the shell?
> > > > > What is your SHELL variable set to?
> > > >
> > > > Inside my .emacs, I set $SHELL to bash, i.e.:
> > > > (setenv "SHELL" "bash")
> > >
> > > That might not do what you want: setenv doesn't change Emacs's own
> > > environment, only the environment that is passed to subprocesses.
> >
> > That is what you need in this case; the vc lisp is spawning a shell
> > under Emacs in which to run cvs.
>
> No. Calling setenv makes sure that whatever shell is run by vc.el, it
> (the shell) gets passed SHELL=bash. But it does nothing to ensure
> that the shell run by vc.el is indeed Bash--this isn't decided by
> looking at the environment passed to subprocesses. When Emacs decides
> what shell to invoke, it looks at its own environment, and setenv
> cannot reach that.
(I've been on travel for a while).
Yes, Eli is correct; I reacted too quickly.
You'll have to look in vc.el to find what mechanism it uses to decide
what shell to run. In some emacs utilities, "/bin/sh" is hardcoded; in
others, a variable is used, with some default that is set by the
environment in effect when emacs boots.
--
-- Stephe
- Re: very wierd commit from emacs (or ntemacs) problem,
Stephen Leake <=