void plugin_repository_destroy(plugin_repository_t *repository) { if (repository == NULL) return; plugin_manager_destroy(repository->manager); list_destroy(repository->plugins); free(repository); }
/* *函数名称: base_stop_program *函数功能: signal handler *输入参数: signum Signal number *输出参数: none *返回值 : none */ static void base_stop_program(int signum) { // set stop flag global_shared.continue_run = CONTINUE_EXIT; // run destroy func packet_get_destroy(); net_destroy(); data_transit_destroy(); plugin_manager_destroy(); feature_manager_destroy(); storage_unit_destroy(); base_destroy(); public_destroy(); }