42 lines
1.5 KiB
Diff
42 lines
1.5 KiB
Diff
glibc-2.14 changed the _hook prototypes with a volatile pointer.
|
|
Submitted upstream:
|
|
|
|
http://code.google.com/p/chromium/issues/detail?id=86646
|
|
|
|
--- third_party/tcmalloc/chromium/src/tcmalloc.cc.orig 2011-06-18 10:29:01.407015864 +0200
|
|
+++ third_party/tcmalloc/chromium/src/tcmalloc.cc 2011-06-18 10:29:32.305013564 +0200
|
|
@@ -375,7 +375,7 @@ static void* tc_ptmalloc_malloc_hook(siz
|
|
return tc_malloc(size);
|
|
}
|
|
|
|
-void* (*__malloc_hook)(
|
|
+void* (* volatile __malloc_hook)(
|
|
size_t size, const void* caller) = tc_ptmalloc_malloc_hook;
|
|
|
|
static void* tc_ptmalloc_realloc_hook(
|
|
@@ -383,14 +383,14 @@ static void* tc_ptmalloc_realloc_hook(
|
|
return tc_realloc(ptr, size);
|
|
}
|
|
|
|
-void* (*__realloc_hook)(
|
|
+void* (* 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 (* volatile __free_hook)(void* ptr, const void* caller) = tc_ptmalloc_free_hook;
|
|
|
|
#endif
|
|
|
|
@@ -1584,7 +1584,7 @@ static void *MemalignOverride(size_t ali
|
|
MallocHook::InvokeNewHook(result, size);
|
|
return result;
|
|
}
|
|
-void *(*__memalign_hook)(size_t, size_t, const void *) = MemalignOverride;
|
|
+void *(* volatile __memalign_hook)(size_t, size_t, const void *) = MemalignOverride;
|
|
#endif // #ifndef TCMALLOC_FOR_DEBUGALLOCATION
|
|
|
|
// ---Double free() debugging implementation -----------------------------------
|