From 51a1dcaa6ed5713520dca36fc58cd9240c08b7ca Mon Sep 17 00:00:00 2001 From: Even Rouault Date: Thu, 7 Sep 2017 17:52:59 +0200 Subject: [PATCH] Avoid malloc poisoning issue when including of uclibc (#1013) Signed-off-by: Olivier Schonken --- src/lib/openjp2/thread.c | 11 ++++++++--- 1 file changed, 8 insertions(+), 3 deletions(-) diff --git a/src/lib/openjp2/thread.c b/src/lib/openjp2/thread.c index 8b56aa4d5..af33c2c80 100644 --- a/src/lib/openjp2/thread.c +++ b/src/lib/openjp2/thread.c @@ -29,9 +29,6 @@ * POSSIBILITY OF SUCH DAMAGE. */ -#include "opj_includes.h" - -#include "thread.h" #include #ifdef MUTEX_win32 @@ -46,6 +43,8 @@ #include #include +#include "opj_includes.h" + OPJ_BOOL OPJ_CALLCONV opj_has_thread_support(void) { return OPJ_TRUE; @@ -289,6 +288,10 @@ void opj_thread_join(opj_thread_t* thread) #include #include +/* Moved after all system includes, and in particular pthread.h, so as to */ +/* avoid poisoning issuing with malloc() use in pthread.h with ulibc (#1013) */ +#include "opj_includes.h" + OPJ_BOOL OPJ_CALLCONV opj_has_thread_support(void) { return OPJ_TRUE; @@ -425,6 +428,8 @@ void opj_thread_join(opj_thread_t* thread) #else /* Stub implementation */ +#include "opj_includes.h" + OPJ_BOOL OPJ_CALLCONV opj_has_thread_support(void) { return OPJ_FALSE;