Thread deinit funcs weren't called. This meant the lua scripts 'deinit'
functions weren't called either.
TmThreadsSetFlag(tv_local, THV_RUNNING_DONE);
TmThreadWaitForFlag(tv_local, THV_DEINIT);
+ r = tm->ThreadDeinit(tv_local, stats_thread_data);
+ if (r != TM_ECODE_OK) {
+ SCLogError(SC_ERR_THREAD_DEINIT, "Perf Counter API "
+ "ThreadDeinit failed");
+ }
+
TmThreadsSetFlag(tv_local, THV_CLOSED);
return NULL;
}
CASE_CODE (SC_ERR_THREAD_SPAWN);
CASE_CODE (SC_ERR_THREAD_CREATE);
CASE_CODE (SC_ERR_THREAD_INIT);
+ CASE_CODE (SC_ERR_THREAD_DEINIT);
CASE_CODE (SC_ERR_THRESHOLD_HASH_ADD);
CASE_CODE (SC_ERR_UNDEFINED_VAR);
CASE_CODE (SC_ERR_RULE_KEYWORD_UNKNOWN);
SC_ERR_NO_NETMAP,
SC_ERR_NETMAP_CREATE,
SC_ERR_NETMAP_READ,
+ SC_ERR_THREAD_DEINIT, /**< thread's deinit function failed */
} SCError;
const char *SCErrorToString(SCError);