PATCH: bad sed expression
Clint Adams
schizo at debian.org
Sun Jan 5 16:37:27 CET 2003
> Can you explain a bit more fully? My linux box with bash 2.05 is happy
> with either form of the sed expression. What environment are you running
> on and which sed expression words and which fails for you?
Yes. I'm trying to run ../../../bogofilter/tests/t.systest.d/t.grftest -v
so $0 is set to "../../../bogofilter/tests/t.systest.d/t.grftest".
When this gets passed to sed, the first match to the RE "./t." is
"r/te", and thus "../../../bogofilter/tests/t.systest.d/t.grftest"
becomes "../../../bogofiltests/t.systest.d/t.grftest", which is a
non-existent path. By making the RE "\./t\.", "./t.blah" will become
"blah", but "../../../bogofilter/tests/t.systest.d/t.grftest" will be
unchanged. This is probably not a good idea either, so perhaps the RE
should be ".*/t\."
On the other hand, maybe all that branching is unnecessary and you could
use something like
Index: tests/t.frame
===================================================================
RCS file: /cvsroot/bogofilter/bogofilter/tests/t.frame,v
retrieving revision 1.16.2.1
diff -u -r1.16.2.1 t.frame
--- tests/t.frame 2 Jan 2003 14:58:20 -0000 1.16.2.1
+++ tests/t.frame 5 Jan 2003 15:36:20 -0000
@@ -13,22 +13,15 @@
: ${relpath=..}
if [ -z "$RUN_FROM_MAKE" ] ; then
- NAME=`echo $0 | sed s at ./t.@@`
- DATE=`date +"%Y%m%d"`
- TMPDIR="$NAME.$DATE"
- rm -rf $TMPDIR
- mkdir $TMPDIR
SUPPRESS_DELETE="NO"
-else
-# SUPPRESS_DELETE=NO
+fi
+
while : ; do
TMPDIR=./checks.$$.`date +"%Y%m%dT%H%M%S"`
- if test x$SUPPRESS_DELETE = xNO ; then TMPDIR=./outputs.`date +"%m%d"` ; fi
[ -d $TMPDIR ] || mkdir $TMPDIR
[ -d $TMPDIR ] && break
sleep 1
done
-fi
if test "x$SUPPRESS_DELETE" = "x" ; then
trap "rm -r -f core ${TMPDIR}" 0
More information about the bogofilter-dev
mailing list