URI: 
       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=''