summaryrefslogtreecommitdiff
path: root/sysdeps/unix/sysv/linux/fatal-prepare.h
diff options
context:
space:
mode:
authorUlrich Drepper <drepper@redhat.com>2007-01-17 08:37:26 +0000
committerUlrich Drepper <drepper@redhat.com>2007-01-17 08:37:26 +0000
commitea1533e08df4c63e680438ac1dc243cdc37d205a (patch)
treed7954d886b979b8bea1d7e1f6db05b440a693097 /sysdeps/unix/sysv/linux/fatal-prepare.h
parentd78bce1c01fe67d02d833e026e5acbb88d1d9836 (diff)
* sysdeps/unix/sysv/linux/libc_pthread_init.c: Don't just copy the
function table, mangle the pointers. * sysdeps/pthread/pthread-functions.h: Define PTHFCT_CALL. * forward.c: Use PTHFCT_CALL and __libc_pthread_functions_init. * sysdeps/pthread/bits/libc-lock.h: When using __libc_pthread_functions demangle pointers before use. * sysdeps/unix/sysv/linux/s390/jmp-unwind.c: Use PTHFCT_CALL to demangle pointer. * sysdeps/unix/sysv/linux/jmp-unwind.c: Likewise. * sysdeps/pthread/setxid.h: Likewise.
Diffstat (limited to 'sysdeps/unix/sysv/linux/fatal-prepare.h')
-rw-r--r--sysdeps/unix/sysv/linux/fatal-prepare.h9
1 files changed, 4 insertions, 5 deletions
diff --git a/sysdeps/unix/sysv/linux/fatal-prepare.h b/sysdeps/unix/sysv/linux/fatal-prepare.h
index d48ae625ee..81f38b09ee 100644
--- a/sysdeps/unix/sysv/linux/fatal-prepare.h
+++ b/sysdeps/unix/sysv/linux/fatal-prepare.h
@@ -1,4 +1,4 @@
-/* Copyright (C) 2003 Free Software Foundation, Inc.
+/* Copyright (C) 2003, 2007 Free Software Foundation, Inc.
This file is part of the GNU C Library.
The GNU C Library is free software; you can redistribute it and/or
@@ -24,10 +24,9 @@
# include <pthread-functions.h>
# define FATAL_PREPARE \
{ \
- int (*fp) (int, int *); \
- fp = __libc_pthread_functions.ptr_pthread_setcancelstate; \
- if (fp != NULL) \
- fp (PTHREAD_CANCEL_DISABLE, NULL); \
+ if (__libc_pthread_functions_init) \
+ PTHFCT_CALL (ptr_pthread_setcancelstate, (PTHREAD_CANCEL_DISABLE, \
+ NULL)); \
}
#else
# pragma weak pthread_setcancelstate