Author: abroekhuis
Date: Tue Dec 3 13:38:27 2013
New Revision: 1547387
URL: http://svn.apache.org/r1547387
Log:
Reverted back to thread_detach to fix the shutdown using an interrupt.
Modified:
incubator/celix/trunk/framework/private/src/framework.c
Modified: incubator/celix/trunk/framework/private/src/framework.c
URL:
http://svn.apache.org/viewvc/incubator/celix/trunk/framework/private/src/framework.c?rev=1547387&r1=1547386&r2=1547387&view=diff
==============================================================================
--- incubator/celix/trunk/framework/private/src/framework.c (original)
+++ incubator/celix/trunk/framework/private/src/framework.c Tue Dec 3 13:38:27
2013
@@ -1985,9 +1985,8 @@ static void *APR_THREAD_FUNC framework_s
fw_log(FW_LOG_ERROR, "Error unlocking the framework, cannot
exit clean.");
}
- apr_thread_exit(thd, APR_SUCCESS);
-
fw_log(FW_LOG_INFO, "FRAMEWORK: Shutdown done\n");
+ apr_thread_exit(thd, APR_SUCCESS);
return NULL;
}
@@ -2183,7 +2182,8 @@ celix_status_t bundleActivator_stop(void
fw_log(FW_LOG_INFO, "FRAMEWORK: Start shutdownthread");
if (apr_thread_create(&shutdownThread, NULL, framework_shutdown,
framework, framework->mp) == APR_SUCCESS) {
- apr_thread_join(&status, shutdownThread);
+// apr_thread_join(&status, shutdownThread);
+ apr_thread_detach(shutdownThread);
} else {
fw_log(FW_LOG_ERROR, "Could not create shutdown thread, normal
exit not possible.");
status = CELIX_FRAMEWORK_EXCEPTION;