From b2fa98a46fe123c33df94a5dbb2cebbdc6698866 Mon Sep 17 00:00:00 2001 From: Ivan Maidanski Date: Thu, 26 Jan 2012 09:16:10 +0400 Subject: [PATCH] Fix gcconfig.h to define USE_GET_STACKBASE_FOR_MAIN for Android (causing pthread_attr_getstack to be used to get main stack base even in single-threaded mode instead of GC_linux_main_stack_base) * include/private/gcconfig.h (USE_GET_STACKBASE_FOR_MAIN): Define if PLATFORM_ANDROID. --- include/private/gcconfig.h | 8 ++++++++ 1 file changed, 8 insertions(+) diff --git a/include/private/gcconfig.h b/include/private/gcconfig.h index b57dcc9..5f03435 100644 --- a/include/private/gcconfig.h +++ b/include/private/gcconfig.h @@ -2347,6 +2347,14 @@ # define DATAEND (ptr_t)(end) #endif +#if defined(PLATFORM_ANDROID) && !defined(THREADS) \ + && !defined(USE_GET_STACKBASE_FOR_MAIN) + /* Always use pthread_attr_getstack on Android ("-lpthread" option is */ + /* not needed to be specified manually) since GC_linux_main_stack_base */ + /* causes app crash if invoked inside Dalvik VM. */ +# define USE_GET_STACKBASE_FOR_MAIN +#endif + #if (defined(SVR4) || defined(PLATFORM_ANDROID)) && !defined(GETPAGESIZE) # include # define GETPAGESIZE() sysconf(_SC_PAGESIZE) -- 2.7.4