mirror of
https://sourceware.org/git/glibc.git
synced 2024-12-27 05:00:15 +00:00
29d9a17dba
2003-01-09 Jakub Jelinek <jakub@redhat.com> * posix/test-vfork.c (noop): Add __attribute_noinline__. * sysdeps/generic/sysdep.h (JUMPTARGET): Define if not defined. * sysdeps/i386/sysdep.h (JUMPTARGET): Undefine JUMPTARGET before defining it. * sysdeps/powerpc/powerpc32/sysdep.h (JUMPTARGET): Likewise. * sysdeps/powerpc/powerpc64/sysdep.h (JUMPTARGET): Likewise. * sysdeps/s390/s390-32/sysdep.h (JUMPTARGET): Likewise. * sysdeps/s390/s390-64/sysdep.h (JUMPTARGET): Likewise. * sysdeps/x86_64/sysdep.h (JUMPTARGET): Likewise.
38 lines
758 B
C
38 lines
758 B
C
#include <errno.h>
|
|
#include <error.h>
|
|
#include <pthread.h>
|
|
#include <stdio.h>
|
|
#include <stdlib.h>
|
|
#include <string.h>
|
|
#include <unistd.h>
|
|
|
|
static void *
|
|
dummy (void *x)
|
|
{
|
|
return NULL;
|
|
}
|
|
|
|
static char buf[sizeof "something\n"];
|
|
|
|
static int
|
|
do_test (void)
|
|
{
|
|
FILE *f;
|
|
pthread_t p;
|
|
|
|
pthread_create (&p, NULL, dummy, NULL);
|
|
f = popen ("echo something", "r");
|
|
if (f == NULL)
|
|
error (EXIT_FAILURE, errno, "popen failed");
|
|
if (fgets (buf, sizeof (buf), f) == NULL)
|
|
error (EXIT_FAILURE, 0, "fgets failed");
|
|
if (strcmp (buf, "something\n"))
|
|
error (EXIT_FAILURE, 0, "read wrong data");
|
|
if (pclose (f))
|
|
error (EXIT_FAILURE, errno, "pclose returned non-zero");
|
|
exit (0);
|
|
}
|
|
|
|
#define TEST_FUNCTION do_test ()
|
|
#include "../test-skeleton.c"
|