Commit Diff


commit - bc18537a3f1dcf7fdc912b6973bc1ec9455dbd1f
commit + a5a494c16724e3f31f6660ad22117a2da393191e
blob - 19dd57726c69b2f16d85b2dfdde684fec911166e
blob + 2a0174bf62362dca6d8c9e6d9f771cf870dfe0a2
--- rcmain
+++ rcmain
@@ -20,8 +20,9 @@ if(! ~ $#cflag 0){
 	if(flag l && test -r $home/lib/profile) . $home/lib/profile
 	status=''
 	eval $cflag
+	exit $status
 }
-if not if(flag i){
+if(flag i){
 	if(~ $TERM 9term){
 		if(~ $#'fn#cd' 0)
 			fn cd { builtin cd $1 && flag i && awd }
@@ -31,10 +32,13 @@ if not if(flag i){
 	status=''
 	if(! ~ $#* 0) . $*
 	. -i '/dev/stdin'
+	exit $status
 }
-if not if(~ $#* 0) . '/dev/stdin'
-if not{
-	status=''
-	. $*
+if(flag l && test -r $home/lib/profile) . $home/lib/profile
+if(~ $#* 0){
+	. /dev/stdin
+	exit $status
 }
+status=''
+. $*
 exit $status