X-Git-Url: http://info.iut-bm.univ-fcomte.fr/pub/gitweb/simgrid.git/blobdiff_plain/2eade77f4364f7c8aa5cc2542f00784cc677f01f..750ecf3b5990073a757a9535f5227491a271e16a:/src/xbt/xbt_main.cpp diff --git a/src/xbt/xbt_main.cpp b/src/xbt/xbt_main.cpp index 5fe38453b0..d60ccb09de 100644 --- a/src/xbt/xbt_main.cpp +++ b/src/xbt/xbt_main.cpp @@ -37,7 +37,11 @@ char *xbt_binary_name = NULL; /* Name of the system process containing us (man xbt_dynar_t xbt_cmdline = NULL; /* all we got in argv */ int xbt_initialized = 0; -bool _sg_do_clean_atexit = true; +simgrid::config::Flag cfg_dbg_clean_atexit{ + "debug/clean-atexit", + {"clean-atexit"}, + "Whether to cleanup SimGrid at exit. Disable it if your code segfaults after its end.", + true}; int xbt_pagesize; int xbt_pagebits = 0; @@ -93,17 +97,12 @@ static void xbt_preinit() #endif xbt_log_preinit(); xbt_dict_preinit(); - -#ifndef _WIN32 - constexpr unsigned seed = 2147483647; - srand48(seed); // FIXME: still worthwhile? -#endif atexit(xbt_postexit); } static void xbt_postexit() { - if (not _sg_do_clean_atexit) + if (not cfg_dbg_clean_atexit) return; xbt_initialized--; xbt_dict_postexit();