tMake fn cd safe for rc -e. - plan9port - [fork] Plan 9 from user space
HTML git clone git://src.adamsgaard.dk/plan9port
DIR Log
DIR Files
DIR Refs
DIR README
DIR LICENSE
---
DIR commit 3f056d8ef2b5eec8cc0401a0e9420977d5b248ea
DIR parent 915a8b77ff4d314b03ec24680a868d09aa5b7c18
HTML Author: rsc <devnull@localhost>
Date: Wed, 10 Aug 2005 16:59:19 +0000
Make fn cd safe for rc -e.
Diffstat:
M rcmain | 13 ++++++++++---
1 file changed, 10 insertions(+), 3 deletions(-)
---
DIR diff --git a/rcmain b/rcmain
t@@ -24,9 +24,16 @@ if(! ~ $#cflag 0){
}
if(flag i){
if(~ $TERM 9term){
- if(~ $#'fn#cd' 0)
- fn cd { builtin cd $1 && flag i && awd }
- awd
+ fn cd {
+ # builtin cd $1 && flag i && awd
+ # is not sufficient when running in a subshell
+ # that is rc -e (like mk uses!)
+ if(builtin cd $1){
+ if(flag i) $PLAN9/bin/9 awd || status=''
+ status=''
+ }
+ }
+ $PLAN9/bin/9 awd
}
if(flag l && test -r $home/lib/profile) . $home/lib/profile
status=''