From 2be077c70ef05845f6651c2402d3b368e2a3e2b5 Mon Sep 17 00:00:00 2001 From: Ben Pfaff Date: Fri, 1 Dec 2006 06:45:52 +0000 Subject: [PATCH] Properly handle empty DO REPEAT...END REPEAT block. Fixes bug #18407. Thanks to John Darrington for reporting this bug. --- tests/bugs/empty-do-repeat.sh | 73 +++++++++++++++++++++++++++++++++++ 1 file changed, 73 insertions(+) create mode 100755 tests/bugs/empty-do-repeat.sh diff --git a/tests/bugs/empty-do-repeat.sh b/tests/bugs/empty-do-repeat.sh new file mode 100755 index 00000000..ad82c233 --- /dev/null +++ b/tests/bugs/empty-do-repeat.sh @@ -0,0 +1,73 @@ +#!/bin/sh + +# This program tests for a bug that crashed PSPP given an empty DO +# REPEAT...END REPEAT block. See bug #18407. + +TEMPDIR=/tmp/pspp-tst-$$ +TESTFILE=$TEMPDIR/`basename $0`.sps + +# ensure that top_builddir are absolute +if [ -z "$top_builddir" ] ; then top_builddir=. ; fi +if [ -z "$top_srcdir" ] ; then top_srcdir=. ; fi +top_builddir=`cd $top_builddir; pwd` +PSPP=$top_builddir/src/ui/terminal/pspp + +# ensure that top_srcdir is absolute +top_srcdir=`cd $top_srcdir; pwd` + +STAT_CONFIG_PATH=$top_srcdir/config +export STAT_CONFIG_PATH + + +cleanup() +{ + cd / + rm -rf $TEMPDIR +} + + +fail() +{ + echo $activity + echo FAILED + cleanup; + exit 1; +} + + +no_result() +{ + echo $activity + echo NO RESULT; + cleanup; + exit 2; +} + +pass() +{ + cleanup; + exit 0; +} + +mkdir -p $TEMPDIR + +cd $TEMPDIR + +activity="create program" +cat > $TEMPDIR/repeat.stat <