From mboxrd@z Thu Jan 1 00:00:00 1970 Received: from techfac.techfak.uni-bielefeld.de ([129.70.1.2]) by archone.tamu.edu with SMTP id <45329>; Thu, 19 Mar 1992 06:56:54 -0600 Received: from dahlie.TechFak.Uni-Bielefeld.DE by techfac.techfak.uni-bielefeld.de (5.65+bind 1.7+ida 1.4.2/tp.29.0890) id AA11100; Thu, 19 Mar 92 13:54:57 +0100 Received: by dahlie.techfak.uni-bielefeld.de (4.1/tp.29.0890) id AA02417; Thu, 19 Mar 92 13:54:55 +0100 Date: Thu, 19 Mar 1992 06:54:55 -0600 From: malte@techfak.uni-bielefeld.de Message-Id: <9203191254.AA02417@dahlie.techfak.uni-bielefeld.de> To: rc@archone.tamu.edu Subject: an improvement(?) suggestion and a question Hello *, in rc's man page it says that $0 is set to name of the function during its execution, so a naive thought came to my mind: fn sighup sigint { echo $progname was killed by $0 | mail somebody exit 2 } But this does not work since $0 when catching a signal is the name of of the function rc was currently working on. To change this, I have two suggestions: 1) Change the signal handler to place the signals name in $0 and allow $* to be referenced with negative indices, with $*(-1) evaluating to the name of the function the present function was called from, $*(-2) ... This is a more general solution, or 2) Introduce a new special variable $signal which evaluates to the name of the most current signal, so that the above example will read ... echo $progname was killed by $signal | mail somebody ... How about that? Now the question: Does anybody know of a more elegant way to temporarily disable the '-e' feature (exit on failure)? The only way I can think of is command || true Malte.