This commit is contained in:
Jakub Jelinek 2007-07-12 18:26:36 +00:00
parent b898e8fb2e
commit 75c50bbb58
3 changed files with 1477 additions and 1 deletions

View File

@ -0,0 +1,32 @@
2006-12-25 Sripathi Kodi <sripathik@in.ibm.com>
* include/link.h: Declare new flag l_fini_called in struct link_map.
* elf/dl-fini.c: In _dl_fini, set l_fini_called to 1 instead of
l_init_called to 0.
--- libc/elf/dl-fini.c 2006-12-22 01:54:22.000000000 -0600
+++ libc/elf/dl-fini.c 2006-12-24 22:51:52.000000000 -0600
@@ -215,10 +215,10 @@ _dl_fini (void)
{
l = maps[i];
- if (l->l_init_called)
+ if (l->l_init_called && !l->l_fini_called)
{
/* Make sure nothing happens if we are called twice. */
- l->l_init_called = 0;
+ l->l_fini_called = 1;
/* Is there a destructor function? */
if (l->l_info[DT_FINI_ARRAY] != NULL
--- libc/include/link.h 2006-12-22 01:54:22.000000000 -0600
+++ libc/include/link.h 2006-12-24 22:53:29.000000000 -0600
@@ -185,6 +185,8 @@ struct link_map
unsigned int l_contiguous:1; /* Nonzero if inter-segment holes are
mprotected or if no holes are present at
all. */
+ unsigned int l_fini_called:1; /* Nonzero if _dl_fini has processed
+ this object */
/* Array with version names. */
unsigned int l_nversions;

File diff suppressed because it is too large Load Diff

View File

@ -1,4 +1,4 @@
%define glibcrelease 19
%define glibcrelease 18.1
%define auxarches i586 i686 athlon sparcv9 alphaev6
%define xenarches i686 athlon
%ifarch %{xenarches}
@ -31,6 +31,8 @@ Source2: %(echo %{glibcsrcdir} | sed s/glibc-/glibc-libidn-/).tar.bz2
Source3: %{glibcname}-fedora-%{glibcdate}.tar.bz2
Patch0: %{glibcname}-fedora.patch
Patch1: %{name}-ia64-lib64.patch
Patch2: glibc-rh234946.patch
Patch3: glibc-x86_64-memcpy.patch
Buildroot: %{_tmppath}/glibc-%{PACKAGE_VERSION}-root
Obsoletes: zoneinfo, libc-static, libc-devel, libc-profile, libc-headers,
Obsoletes: gencat, locale, ldconfig, locale-ja, glibc-profile
@ -242,6 +244,9 @@ package or when debugging this package.
%patch1 -p1
%endif
%endif
%patch2 -p1
# Postpone until this is enough tested in F7
#%patch3 -p1
# Hack till glibc-kernheaders get updated, argh
mkdir -p override_headers/linux