diff options
| author | skrll <skrll@NetBSD.org> | 2007-10-30 17:19:59 +0000 |
|---|---|---|
| committer | skrll <skrll@NetBSD.org> | 2007-10-30 17:19:59 +0000 |
| commit | 29353f93e21f780bc0bcd6f0b0e746c571f716ef (patch) | |
| tree | af10e340f139d867fbd5fd32d5c27a9fbb8ac9c2 /lib/libc/stdlib | |
| parent | 4501e92c93c80ba7ffe930afd5c3141e4a5e4782 (diff) | |
Build a local copy of exit that doesn't call __cxa_finalize. It's not
needed and drags in a lot of libc via free.
Diffstat (limited to 'lib/libc/stdlib')
| -rw-r--r-- | lib/libc/stdlib/exit.c | 8 |
1 files changed, 6 insertions, 2 deletions
diff --git a/lib/libc/stdlib/exit.c b/lib/libc/stdlib/exit.c index a183b70b9d9..ebb0e3e0fdc 100644 --- a/lib/libc/stdlib/exit.c +++ b/lib/libc/stdlib/exit.c @@ -1,4 +1,4 @@ -/* $NetBSD: exit.c,v 1.10 2003/08/07 16:43:39 agc Exp $ */ +/* $NetBSD: exit.c,v 1.11 2007/10/30 17:19:59 skrll Exp $ */ /*- * Copyright (c) 1990, 1993 @@ -34,14 +34,16 @@ #if 0 static char sccsid[] = "@(#)exit.c 8.1 (Berkeley) 6/4/93"; #else -__RCSID("$NetBSD: exit.c,v 1.10 2003/08/07 16:43:39 agc Exp $"); +__RCSID("$NetBSD: exit.c,v 1.11 2007/10/30 17:19:59 skrll Exp $"); #endif #endif /* LIBC_SCCS and not lint */ #include <stdlib.h> #include <unistd.h> +#ifdef _LIBC #include "reentrant.h" #include "atexit.h" +#endif void (*__cleanup) __P((void)); @@ -53,7 +55,9 @@ exit(status) int status; { +#ifdef _LIBC __cxa_finalize(NULL); +#endif if (__cleanup) (*__cleanup)(); _exit(status); |
