summaryrefslogtreecommitdiffstats
path: root/libc/unistd
diff options
context:
space:
mode:
authorThe Android Open Source Project <initial-contribution@android.com>2009-01-20 14:03:55 -0800
committerThe Android Open Source Project <initial-contribution@android.com>2009-01-20 14:03:55 -0800
commitd37527501c85edcb3a6a7c8a0b6297d52d434897 (patch)
treef005d945ce90569b8e63cf42294ab42dddab52c2 /libc/unistd
parente5cc1f386b167b9f7bfdebc7219e89aa9b71e4b2 (diff)
downloadbionic-d37527501c85edcb3a6a7c8a0b6297d52d434897.zip
bionic-d37527501c85edcb3a6a7c8a0b6297d52d434897.tar.gz
bionic-d37527501c85edcb3a6a7c8a0b6297d52d434897.tar.bz2
auto import from //branches/cupcake/...@127101
Diffstat (limited to 'libc/unistd')
-rw-r--r--libc/unistd/abort.c6
1 files changed, 4 insertions, 2 deletions
diff --git a/libc/unistd/abort.c b/libc/unistd/abort.c
index 3291287..a02beba 100644
--- a/libc/unistd/abort.c
+++ b/libc/unistd/abort.c
@@ -56,9 +56,11 @@ abort(void)
if (cleanup_called == 0) {
while (p != NULL && p->next != NULL)
p = p->next;
- if (p != NULL && p->fns[0] != NULL) {
+ /* the check for fn_dso == NULL is mostly paranoia */
+ if (p != NULL && p->fns[0].fn_dso == NULL &&
+ p->fns[0].fn_ptr.std_func != NULL) {
cleanup_called = 1;
- (*p->fns[0])();
+ (*p->fns[0].fn_ptr.std_func)();
}
}