diff options
author | Bruce Beare <bruce.j.beare@intel.com> | 2011-06-20 10:29:50 -0700 |
---|---|---|
committer | Bruce Beare <bruce.j.beare@intel.com> | 2011-06-20 14:44:44 -0700 |
commit | 39640842823ba4cd42bd11514c0da39aa939519f (patch) | |
tree | c2cddf3319145716533bc9d12ad1d6bb5c047f59 /libc/stdlib | |
parent | 4d9b75a9b08c19cef81b22f889edba61257fb356 (diff) | |
download | bionic-39640842823ba4cd42bd11514c0da39aa939519f.zip bionic-39640842823ba4cd42bd11514c0da39aa939519f.tar.gz bionic-39640842823ba4cd42bd11514c0da39aa939519f.tar.bz2 |
Enable functional DSO object destruction
Unfortunately, legacy .so files for ARM don't have a correct crtbegin file.
Consequently, we have to grandfather the old __dso_handle behaviour.
Add some ifdefs for ARM to allow it to use the old code until we can work
out a transition.
Change-Id: I6a28f368267d792c94e1d985d8344023bc632f6f
Author: H.J. Lu <hongjiu.lu@intel.com>
Signed-off-by: Bruce Beare <bruce.j.beare@intel.com>
Diffstat (limited to 'libc/stdlib')
-rw-r--r-- | libc/stdlib/atexit.c | 2 |
1 files changed, 2 insertions, 0 deletions
diff --git a/libc/stdlib/atexit.c b/libc/stdlib/atexit.c index 4ba2177..f4bcab9 100644 --- a/libc/stdlib/atexit.c +++ b/libc/stdlib/atexit.c @@ -104,6 +104,7 @@ unlock: return (ret); } +#ifdef CRT_LEGACY_WORKAROUND /* * Register a function to be performed at exit. */ @@ -112,6 +113,7 @@ atexit(void (*func)(void)) { return (__cxa_atexit((void (*)(void *))func, NULL, NULL)); } +#endif /* * Call all handlers registered with __cxa_atexit() for the shared |