summaryrefslogtreecommitdiffstats
path: root/abs/extra/community/chromium/glibc-2.14.patch
diff options
context:
space:
mode:
authorCecil <knoppmyth@gmail.com>2011-07-17 20:49:01 (GMT)
committerCecil <knoppmyth@gmail.com>2011-07-17 20:49:01 (GMT)
commit4e8509368ee8a5b76c4fd5cc1737dfc0f5fed607 (patch)
tree665570088d4fe2c675834c2409efafb80fe1a4e8 /abs/extra/community/chromium/glibc-2.14.patch
parent13e7dfcaf9aa5d46abd43fc0bfcc8c2167e99645 (diff)
parentf1e8cbd3510cef06cad3ea55eaedf40aca12f1ae (diff)
downloadlinhes_pkgbuild-4e8509368ee8a5b76c4fd5cc1737dfc0f5fed607.zip
linhes_pkgbuild-4e8509368ee8a5b76c4fd5cc1737dfc0f5fed607.tar.gz
linhes_pkgbuild-4e8509368ee8a5b76c4fd5cc1737dfc0f5fed607.tar.bz2
Merge branch 'testing' of ssh://cesman@linhes.org/mount/repository/linhes_pkgbuild into testing
Diffstat (limited to 'abs/extra/community/chromium/glibc-2.14.patch')
-rw-r--r--abs/extra/community/chromium/glibc-2.14.patch51
1 files changed, 51 insertions, 0 deletions
diff --git a/abs/extra/community/chromium/glibc-2.14.patch b/abs/extra/community/chromium/glibc-2.14.patch
new file mode 100644
index 0000000..1bfbbee
--- /dev/null
+++ b/abs/extra/community/chromium/glibc-2.14.patch
@@ -0,0 +1,51 @@
+--- trunk/src/third_party/tcmalloc/chromium/src/tcmalloc.cc 2011/06/21 07:36:46 89799
++++ trunk/src/third_party/tcmalloc/chromium/src/tcmalloc.cc 2011/06/21 07:37:01 89800
+@@ -150,6 +150,13 @@
+ # define WIN32_DO_PATCHING 1
+ #endif
+
++// GLibc 2.14+ requires the hook functions be declared volatile, based on the
++// value of the define __MALLOC_HOOK_VOLATILE. For compatibility with
++// older/non-GLibc implementations, provide an empty definition.
++#if !defined(__MALLOC_HOOK_VOLATILE)
++#define __MALLOC_HOOK_VOLATILE
++#endif
++
+ using std::max;
+ using tcmalloc::PageHeap;
+ using tcmalloc::SizeMap;
+@@ -403,7 +410,7 @@
+ return tc_malloc(size);
+ }
+
+-void* (*__malloc_hook)(
++void* (*__MALLOC_HOOK_VOLATILE __malloc_hook)(
+ size_t size, const void* caller) = tc_ptmalloc_malloc_hook;
+
+ static void* tc_ptmalloc_realloc_hook(
+@@ -411,14 +418,14 @@
+ return tc_realloc(ptr, size);
+ }
+
+-void* (*__realloc_hook)(
++void* (*__MALLOC_HOOK_VOLATILE __realloc_hook)(
+ void* ptr, size_t size, const void* caller) = tc_ptmalloc_realloc_hook;
+
+ static void tc_ptmalloc_free_hook(void* ptr, const void* caller) {
+ tc_free(ptr);
+ }
+
+-void (*__free_hook)(void* ptr, const void* caller) = tc_ptmalloc_free_hook;
++void (*__MALLOC_HOOK_VOLATILE __free_hook)(void* ptr, const void* caller) = tc_ptmalloc_free_hook;
+
+ #endif
+
+@@ -1757,7 +1764,7 @@
+ MallocHook::InvokeNewHook(result, size);
+ return result;
+ }
+-void *(*__memalign_hook)(size_t, size_t, const void *) = MemalignOverride;
++void *(*__MALLOC_HOOK_VOLATILE __memalign_hook)(size_t, size_t, const void *) = MemalignOverride;
+ #endif // #ifndef TCMALLOC_FOR_DEBUGALLOCATION
+
+ // ---Double free() debugging implementation -----------------------------------