1
1

pmix3x: client: fix PMIx_Finalize() sequence

pmix_progress_thread_finalize() invokes libevent event_base_free,
so all libevent stuff cannot be used after.
Hence, pmix_client_globals.myserver must be PMIX_DESTRUCT'ed
before invoking pmix_progress_thread_finalize()
Этот коммит содержится в:
Gilles Gouaillardet 2016-09-24 00:00:10 +09:00
родитель 34c036acf4
Коммит 362a5886de

Просмотреть файл

@ -506,6 +506,7 @@ PMIX_EXPORT pmix_status_t PMIx_Finalize(const pmix_info_t info[], size_t ninfo)
"pmix:client finalize sync received");
}
PMIX_DESTRUCT(&pmix_client_globals.myserver);
if (!pmix_globals.external_evbase) {
#ifdef HAVE_LIBEVENT_GLOBAL_SHUTDOWN
libevent_global_shutdown();
@ -514,7 +515,6 @@ PMIX_EXPORT pmix_status_t PMIx_Finalize(const pmix_info_t info[], size_t ninfo)
}
pmix_usock_finalize();
PMIX_DESTRUCT(&pmix_client_globals.myserver);
PMIX_LIST_DESTRUCT(&pmix_client_globals.pending_requests);
if (0 <= pmix_client_globals.myserver.sd) {