mirror of
https://sourceware.org/git/glibc.git
synced 2024-11-23 01:33:36 +08:00
a306c790a8
Update all sourceware links to https. The website redirects everything to https anyway so let the web server do a bit less work. The only reference that remains unchanged is the one in the old ChangeLog, since it didn't seem worth changing it. * NEWS: Update sourceware link to https. * configure.ac: Likewise. * crypt/md5test-giant.c: Likewise. * dlfcn/bug-atexit1.c: Likewise. * dlfcn/bug-atexit2.c: Likewise. * localedata/README: Likewise. * malloc/tst-mallocfork.c: Likewise. * manual/install.texi: Likewise. * nptl/tst-pthread-getattr.c: Likewise. * stdio-common/tst-fgets.c: Likewise. * stdio-common/tst-fwrite.c: Likewise. * sunrpc/Makefile: Likewise. * sysdeps/arm/armv7/multiarch/memcpy_impl.S: Likewise. * wcsmbs/tst-mbrtowc2.c: Likewise. * configure: Regenerate. * INSTALL: Regenerate.
54 lines
726 B
C
54 lines
726 B
C
/* Derived from a test case in
|
|
https://sourceware.org/bugzilla/show_bug.cgi?id=1158. */
|
|
#include <dlfcn.h>
|
|
#include <stdlib.h>
|
|
#include <stdio.h>
|
|
#include <unistd.h>
|
|
|
|
static int next = 3;
|
|
|
|
static void
|
|
f1 (void)
|
|
{
|
|
puts ("f1");
|
|
if (next-- != 1)
|
|
_exit (1);
|
|
}
|
|
|
|
static void
|
|
f2 (void)
|
|
{
|
|
puts ("f2");
|
|
if (next-- != 2)
|
|
_exit (1);
|
|
}
|
|
|
|
static void
|
|
f3 (void)
|
|
{
|
|
puts ("f3");
|
|
if (next-- != 3)
|
|
_exit (1);
|
|
}
|
|
|
|
static int
|
|
do_test (void)
|
|
{
|
|
atexit (f1);
|
|
|
|
void *dso = dlopen ("$ORIGIN/bug-atexit2-lib.so", RTLD_NOW);
|
|
void (*fn) (void) = (void (*) (void)) dlsym (dso, "foo");
|
|
fn ();
|
|
|
|
atexit (f2);
|
|
|
|
dlclose (dso);
|
|
|
|
atexit (f3);
|
|
|
|
return 0;
|
|
}
|
|
|
|
#define TEST_FUNCTION do_test ()
|
|
#include "../test-skeleton.c"
|