Module Name: src Committed By: christos Date: Sat Mar 22 16:59:02 UTC 2025
Modified Files: src/lib/csu/common: crt0-common.c Log Message: PR/59189: RVP: move atexit(cleanup) after _preinit() to allow sanitizer initialization during preinit as well as atexit interception. To generate a diff of this commit: cvs rdiff -u -r1.28 -r1.29 src/lib/csu/common/crt0-common.c Please note that diffs are not public domain; they are subject to the copyright notices on the relevant files.
Modified files: Index: src/lib/csu/common/crt0-common.c diff -u src/lib/csu/common/crt0-common.c:1.28 src/lib/csu/common/crt0-common.c:1.29 --- src/lib/csu/common/crt0-common.c:1.28 Fri Jan 19 14:22:17 2024 +++ src/lib/csu/common/crt0-common.c Sat Mar 22 12:59:02 2025 @@ -1,4 +1,4 @@ -/* $NetBSD: crt0-common.c,v 1.28 2024/01/19 19:22:17 christos Exp $ */ +/* $NetBSD: crt0-common.c,v 1.29 2025/03/22 16:59:02 christos Exp $ */ /* * Copyright (c) 1998 Christos Zoulas @@ -36,7 +36,7 @@ */ #include <sys/cdefs.h> -__RCSID("$NetBSD: crt0-common.c,v 1.28 2024/01/19 19:22:17 christos Exp $"); +__RCSID("$NetBSD: crt0-common.c,v 1.29 2025/03/22 16:59:02 christos Exp $"); #include <sys/types.h> #include <sys/exec.h> @@ -317,9 +317,6 @@ ___start(void (*cleanup)(void), /* fro __progname = empty_string; } - if (cleanup != NULL) - atexit(cleanup); - _libc_init(); if (&rtld_DYNAMIC == NULL) { @@ -333,6 +330,9 @@ ___start(void (*cleanup)(void), /* fro _preinit(); + if (cleanup != NULL) + atexit(cleanup); + #ifdef MCRT0 atexit(_mcleanup); monstartup((u_long)&__eprol, (u_long)&__etext);