summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--ChangeLog6
-rw-r--r--modules/xalloc-die-tests4
-rw-r--r--tests/test-xalloc-die.c2
-rwxr-xr-xtests/test-xalloc-die.sh28
4 files changed, 39 insertions, 1 deletions
diff --git a/ChangeLog b/ChangeLog
index 0c56777b4a..68b11aa038 100644
--- a/ChangeLog
+++ b/ChangeLog
@@ -1,5 +1,11 @@
2009-11-16 Eric Blake <ebb9@byu.net>
+ xalloc-die-tests: avoid printing null pointer
+ * modules/xalloc-die-tests (Files, Makefile.am): Wrap execution in
+ shell script.
+ * tests/test-xalloc-die.c (program_name): Declare.
+ * tests/test-xalloc-die.sh (tmpfiles): New file.
+
setenv, unsetenv: work around various bugs
* lib/setenv.c (setenv) [!HAVE_SETENV]: Resync from glibc.
(setenv) [HAVE_SETENV]: Work around bugs.
diff --git a/modules/xalloc-die-tests b/modules/xalloc-die-tests
index 03ee303cd9..97b25e7741 100644
--- a/modules/xalloc-die-tests
+++ b/modules/xalloc-die-tests
@@ -1,9 +1,11 @@
Files:
tests/test-xalloc-die.c
+tests/test-xalloc-die.sh
Depends-on:
Makefile.am:
-TESTS += test-xalloc-die
+TESTS += test-xalloc-die.sh
+TESTS_ENVIRONMENT += EXEEXT='@EXEEXT@'
XFAIL_TESTS += test-xalloc-die
check_PROGRAMS += test-xalloc-die
diff --git a/tests/test-xalloc-die.c b/tests/test-xalloc-die.c
index e281767787..88461e84bb 100644
--- a/tests/test-xalloc-die.c
+++ b/tests/test-xalloc-die.c
@@ -20,6 +20,8 @@
#include "xalloc.h"
+char *program_name = "test-xalloc-die";
+
int
main (void)
{
diff --git a/tests/test-xalloc-die.sh b/tests/test-xalloc-die.sh
new file mode 100755
index 0000000000..340a500f7f
--- /dev/null
+++ b/tests/test-xalloc-die.sh
@@ -0,0 +1,28 @@
+#!/bin/sh
+
+tmpfiles=""
+trap '__st=$?; rm -fr $tmpfiles; exit $__st' 0
+trap '__st=$?; (exit $__st); exit $__st' 1 2 3 15
+
+if ( diff --version < /dev/null 2>&1 | grep GNU ) 2>&1 > /dev/null; then
+ compare() { diff -u "$@"; }
+elif ( cmp --version < /dev/null 2>&1 | grep GNU ) 2>&1 > /dev/null; then
+ compare() { cmp -s "$@"; }
+else
+ compare() { cmp "$@"; }
+fi
+
+tmpfiles="t-xalloc-die.tmp"
+./test-xalloc-die${EXEEXT} 2> t-xalloc-die.tmp
+case $? in
+ 1) ;;
+ *) (exit 1); exit 1 ;;
+esac
+
+compare - t-xalloc-die.tmp <<\EOF || { (exit 1); exit 1; }
+test-xalloc-die: memory exhausted
+EOF
+
+rm -fr $tmpfiles
+
+exit 0