mirror of
https://sourceware.org/git/glibc.git
synced 2025-07-29 11:41:21 +03:00
libc-cancellation.c cleanup.
The unrelated function __libc_cleanup_routine should not be in this file. Move it into its own file.
This commit is contained in:
@ -1,5 +1,9 @@
|
|||||||
2009-05-16 Ulrich Drepper <drepper@redhat.com>
|
2009-05-16 Ulrich Drepper <drepper@redhat.com>
|
||||||
|
|
||||||
|
* libc-cancellation.c: Move __libc_cleanup_routine to...
|
||||||
|
* libc-cleanup.c: ...here. New file.
|
||||||
|
* Makefile (routines): Add libc-cleanup.
|
||||||
|
|
||||||
* cancellation.c (__pthread_disable_asynccancel): Remove unnecessary
|
* cancellation.c (__pthread_disable_asynccancel): Remove unnecessary
|
||||||
test.
|
test.
|
||||||
* libc-cancellation.c: Use <nptl/cancellation.c: to define the code.
|
* libc-cancellation.c: Use <nptl/cancellation.c: to define the code.
|
||||||
|
@ -1,5 +1,4 @@
|
|||||||
# Copyright (C) 2002,2003,2004,2005,2006,2007,2008
|
# Copyright (C) 2002-2008,2009 Free Software Foundation, Inc.
|
||||||
# Free Software Foundation, Inc.
|
|
||||||
# This file is part of the GNU C Library.
|
# This file is part of the GNU C Library.
|
||||||
|
|
||||||
# The GNU C Library is free software; you can redistribute it and/or
|
# The GNU C Library is free software; you can redistribute it and/or
|
||||||
@ -28,7 +27,8 @@ extra-libs := libpthread
|
|||||||
extra-libs-others := $(extra-libs)
|
extra-libs-others := $(extra-libs)
|
||||||
install-lib-ldscripts := libpthread.so
|
install-lib-ldscripts := libpthread.so
|
||||||
|
|
||||||
routines = alloca_cutoff forward libc-lowlevellock libc-cancellation
|
routines = alloca_cutoff forward libc-lowlevellock libc-cancellation \
|
||||||
|
libc-cleanup
|
||||||
shared-only-routines = forward
|
shared-only-routines = forward
|
||||||
|
|
||||||
libpthread-routines = nptl-init vars events version \
|
libpthread-routines = nptl-init vars events version \
|
||||||
|
@ -23,11 +23,3 @@
|
|||||||
#define __pthread_enable_asynccancel __libc_enable_asynccancel
|
#define __pthread_enable_asynccancel __libc_enable_asynccancel
|
||||||
#define __pthread_disable_asynccancel __libc_disable_asynccancel
|
#define __pthread_disable_asynccancel __libc_disable_asynccancel
|
||||||
#include <nptl/cancellation.c>
|
#include <nptl/cancellation.c>
|
||||||
|
|
||||||
|
|
||||||
void
|
|
||||||
__libc_cleanup_routine (struct __pthread_cleanup_frame *f)
|
|
||||||
{
|
|
||||||
if (f->__do_it)
|
|
||||||
f->__cancel_routine (f->__cancel_arg);
|
|
||||||
}
|
|
||||||
|
28
nptl/libc-cleanup.c
Normal file
28
nptl/libc-cleanup.c
Normal file
@ -0,0 +1,28 @@
|
|||||||
|
/* Copyright (C) 2002, 2003, 2005, 2009 Free Software Foundation, Inc.
|
||||||
|
This file is part of the GNU C Library.
|
||||||
|
Contributed by Ulrich Drepper <drepper@redhat.com>, 2002.
|
||||||
|
|
||||||
|
The GNU C Library is free software; you can redistribute it and/or
|
||||||
|
modify it under the terms of the GNU Lesser General Public
|
||||||
|
License as published by the Free Software Foundation; either
|
||||||
|
version 2.1 of the License, or (at your option) any later version.
|
||||||
|
|
||||||
|
The GNU C Library is distributed in the hope that it will be useful,
|
||||||
|
but WITHOUT ANY WARRANTY; without even the implied warranty of
|
||||||
|
MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
|
||||||
|
Lesser General Public License for more details.
|
||||||
|
|
||||||
|
You should have received a copy of the GNU Lesser General Public
|
||||||
|
License along with the GNU C Library; if not, write to the Free
|
||||||
|
Software Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA
|
||||||
|
02111-1307 USA. */
|
||||||
|
|
||||||
|
#include "pthreadP.h"
|
||||||
|
|
||||||
|
|
||||||
|
void
|
||||||
|
__libc_cleanup_routine (struct __pthread_cleanup_frame *f)
|
||||||
|
{
|
||||||
|
if (f->__do_it)
|
||||||
|
f->__cancel_routine (f->__cancel_arg);
|
||||||
|
}
|
Reference in New Issue
Block a user