aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorNatanael Copa <ncopa@alpinelinux.org>2012-11-01 14:30:03 +0000
committerNatanael Copa <ncopa@alpinelinux.org>2012-11-01 14:30:03 +0000
commitd36e402fae2b31ca2bf6eafbafa77d716ea99b15 (patch)
tree210dfab2f1478d522876b5d78531245393fce275
parentd4601330cffd7f0afebb906a7b985001f753aee4 (diff)
downloadalpine_aports-d36e402fae2b31ca2bf6eafbafa77d716ea99b15.tar.bz2
alpine_aports-d36e402fae2b31ca2bf6eafbafa77d716ea99b15.tar.xz
alpine_aports-d36e402fae2b31ca2bf6eafbafa77d716ea99b15.zip
main/libc0.9.32: dlclose fix
Issue reported here: http://lists.uclibc.org/pipermail/uclibc/2012-October/047059.html Patch is from Timo
-rw-r--r--main/libc0.9.32/APKBUILD4
-rw-r--r--main/libc0.9.32/uclibc-dlclose-fix.patch14
2 files changed, 17 insertions, 1 deletions
diff --git a/main/libc0.9.32/APKBUILD b/main/libc0.9.32/APKBUILD
index da7d6e18ce..88fa0bf64f 100644
--- a/main/libc0.9.32/APKBUILD
+++ b/main/libc0.9.32/APKBUILD
@@ -4,7 +4,7 @@ pkgname=libc$_abiver
4_gitver= 4_gitver=
5pkgver=0.9.33.2 5pkgver=0.9.33.2
6_ver=${pkgver/_/-} 6_ver=${pkgver/_/-}
7pkgrel=12 7pkgrel=13
8pkgdesc="C library for developing embedded Linux systems" 8pkgdesc="C library for developing embedded Linux systems"
9url=http://uclibc.org 9url=http://uclibc.org
10license="LGPL-2" 10license="LGPL-2"
@@ -54,6 +54,7 @@ librt-re-add-SIGCANCEL-to-the-list-of-blocked-signal-in-helper-thread.patch
54 54
55 0001-libc-sysdeps-get-make-set-swap-context-for-i386.patch 55 0001-libc-sysdeps-get-make-set-swap-context-for-i386.patch
56 0002-libc-sysdeps-add-get-make-set-swap-context-for-x86_6.patch 56 0002-libc-sysdeps-add-get-make-set-swap-context-for-x86_6.patch
57 uclibc-dlclose-fix.patch
57 58
58 uclibcconfig.x86 59 uclibcconfig.x86
59 uclibcconfig.x86_64 60 uclibcconfig.x86_64
@@ -191,6 +192,7 @@ f059f5e437ed4fe1b6973dd08972e583 0003-pread-pwrite-drop-fallback-funcs.patch
191f41ab6cf22545d2e629d4c7107ac6f85 0009-sys-quota.h-sync-with-glibc.patch 192f41ab6cf22545d2e629d4c7107ac6f85 0009-sys-quota.h-sync-with-glibc.patch
192e5aceb82bf4ffd5328113af5380fcdb6 0001-libc-sysdeps-get-make-set-swap-context-for-i386.patch 193e5aceb82bf4ffd5328113af5380fcdb6 0001-libc-sysdeps-get-make-set-swap-context-for-i386.patch
193da043a65003ac29ca8b96f416e7752ee 0002-libc-sysdeps-add-get-make-set-swap-context-for-x86_6.patch 194da043a65003ac29ca8b96f416e7752ee 0002-libc-sysdeps-add-get-make-set-swap-context-for-x86_6.patch
1958374c98e769e603af4adad12e01cf358 uclibc-dlclose-fix.patch
194ce8a33a31f5a53031fbad8b1d1b66d44 uclibcconfig.x86 196ce8a33a31f5a53031fbad8b1d1b66d44 uclibcconfig.x86
195e861a17baa541accf4d4d39a98d74c32 uclibcconfig.x86_64 197e861a17baa541accf4d4d39a98d74c32 uclibcconfig.x86_64
196ce8a33a31f5a53031fbad8b1d1b66d44 uclibcconfig.i486 198ce8a33a31f5a53031fbad8b1d1b66d44 uclibcconfig.i486
diff --git a/main/libc0.9.32/uclibc-dlclose-fix.patch b/main/libc0.9.32/uclibc-dlclose-fix.patch
new file mode 100644
index 0000000000..c99cd2526c
--- /dev/null
+++ b/main/libc0.9.32/uclibc-dlclose-fix.patch
@@ -0,0 +1,14 @@
1--- ./ldso/libdl/libdl.c.orig
2+++ ./ldso/libdl/libdl.c
3@@ -951,8 +951,8 @@
4
5 dtv_t *dtv = THREAD_DTV ();
6
7- _dl_assert(!(dtv[tls_lmap->l_tls_modid].pointer.is_static));
8- if (dtv[tls_lmap->l_tls_modid].pointer.val != TLS_DTV_UNALLOCATED) {
9+ if (!(dtv[tls_lmap->l_tls_modid].pointer.is_static) &&
10+ dtv[tls_lmap->l_tls_modid].pointer.val != TLS_DTV_UNALLOCATED) {
11 /* Note that free is called for NULL is well. We
12 deallocate even if it is this dtv entry we are
13 supposed to load. The reason is that we call
14