Mailing-List: contact cygwin-developers-help AT sourceware DOT cygnus DOT com; run by ezmlm List-Subscribe: List-Archive: List-Post: List-Help: , Sender: cygwin-developers-owner AT sources DOT redhat DOT com Delivered-To: mailing list cygwin-developers AT sources DOT redhat DOT com Date: Tue, 28 Aug 2001 15:04:05 -0400 From: Jason Tishler To: cygwin-developers AT Cygwin DOT Com Subject: Re: Disappearing rxvt Windows -- can anyone else duplicate this problem? Message-ID: <20010828150405.P808@dothill.com> Mail-Followup-To: cygwin-developers AT Cygwin DOT Com Mime-Version: 1.0 Content-Type: text/plain; charset=us-ascii Content-Disposition: inline In-Reply-To: <20010828011021.A22330@redhat.com> User-Agent: Mutt/1.3.18i Chris, On Tue, Aug 28, 2001 at 01:10:21AM -0400, Christopher Faylor wrote: > On Mon, Aug 27, 2001 at 09:20:04PM -0400, Jason Tishler wrote: > >Earnie, > > > >On Mon, Aug 27, 2001 at 05:13:48PM -0400, Earnie Boyd wrote: > >> You know about the -tn switch to rxvt don't you? > > > >Yes, but you are missing the point which is the following bash construct: > > > > term=$(cat $TERMFILE) > > > >causes problems for Cygwin -- not how I choose to set my TERM variable. > > I'm sorry to say that I can't duplicate this. > > I put the above, and nothing but the above in my .bash_profile and rxvt > still operates properly. Unfortunately, this problem is a more insidious (and less straight forward) then I last thought. My latest hypothesis is that many command substitutions and not specifically the above instance of one is the cause of the problem. The following shows that my bash startup actually invokes approximately 15 different command substitutions: $ fgrep '$(' $(lprof althea) /etc/profile | fgrep -v '$((' .bash_profile:export HOSTNAME=${HOSTNAME:-$(uname -n)} .bash_profile:HOSTNAME=$(echo ${HOSTNAME%%.*} | tr 'A-Z' 'a-z') .bash_profile-althea:SystemRoot=$(cygpath -u $SYSTEMROOT) .bash_profile-althea:SystemDrive=$(cygpath -u $SYSTEMDRIVE) .bash_profile-althea:ProgramFile=$(cygpath -u "$SYSTEMDRIVE/Program Files") .bash_profile-althea:export TEMP=$(cygpath -u ${TEMP:-$SYSTEMDRIVE\\TEMP}) .bash_profile-althea:export TMP=$(cygpath -u ${TMP:-$SYSTEMDRIVE\\tmp}) .bash_setterm: # term=$(cat $TERMFILE) .bashrc: if [[ $(uname -s) = SunOS ]] .bashrc: words="$(ls -1 ${CEPATH//:/ } 2>/dev/null | fgrep -v /)" .bashrc: words="$(find ${CEPATH//:/ } -maxdepth 1 -name '[^.]*' \( -type f -o -type l \) -printf '%f\n' 2>/dev/null)" /etc/profile:if [[ $(uname -s) = CYGWIN_NT* ]] /etc/profile: SystemRoot=$(cygpath -u $SYSTEMROOT) /etc/profile: WinDir=$(cygpath -u $WINDIR) /etc/profile: export LOGNAME=${USER:-${USERNAME:-$(whoami)}} If I disable some of them, then the above mentioned command substitution works fine. Is it possible that executing many command substitutions causes the wrong file descriptor to get closed confusing bash into thinking that it saw EOF? I'm still trying to reproduce this problem with a single shell script, but so far I haven't had any luck. I will keep banging my head... BTW, I concur with Earnie that we can remove rxvt from the picture. I have been testing by just executing "bash --login" from cmd. Thanks, Jason