diff options
Diffstat (limited to 'libpthread/linuxthreads.old/wrapsyscall.c')
| -rw-r--r-- | libpthread/linuxthreads.old/wrapsyscall.c | 13 | 
1 files changed, 7 insertions, 6 deletions
diff --git a/libpthread/linuxthreads.old/wrapsyscall.c b/libpthread/linuxthreads.old/wrapsyscall.c index 462768d9d..6e18388ca 100644 --- a/libpthread/linuxthreads.old/wrapsyscall.c +++ b/libpthread/linuxthreads.old/wrapsyscall.c @@ -37,12 +37,13 @@  #ifndef __PIC__  /* We need a hook to force this file to be linked in when static     libpthread is used.  */ -const int __pthread_provide_wrappers = 0; +const char __pthread_provide_wrappers = 0;  #endif - +/* Using private interface to libc (__libc_foo) to implement + * cancellable versions of some libc functions */  #define CANCELABLE_SYSCALL(res_type, name, param_list, params)			\ -res_type name param_list;							\ +res_type __libc_##name param_list;						\  res_type									\  __attribute__ ((weak))								\  name param_list									\ @@ -50,13 +51,13 @@ name param_list									\    res_type result;								\    int oldtype;									\    pthread_setcanceltype (PTHREAD_CANCEL_ASYNCHRONOUS, &oldtype);		\ -  result = name params;								\ +  result = __libc_##name params;						\    pthread_setcanceltype (oldtype, NULL);					\    return result;								\  }  #define CANCELABLE_SYSCALL_VA(res_type, name, param_list, params, last_arg)	\ -res_type name param_list;							\ +res_type __libc_##name param_list;						\  res_type									\  __attribute__ ((weak))								\  name param_list									\ @@ -66,7 +67,7 @@ name param_list									\    va_list ap;									\    pthread_setcanceltype (PTHREAD_CANCEL_ASYNCHRONOUS, &oldtype);		\    va_start (ap, last_arg);							\ -  result = name params;								\ +  result = __libc_##name params;						\    va_end (ap);									\    pthread_setcanceltype (oldtype, NULL);					\    return result;								\  | 
