CRM_DEV_ASSERT(action->invoked == FALSE); if(crm_assert_failed) { return FALSE; }  action->invoked = TRUE; 
initiate_action(action_t *action) {	const char *id = NULL;	id = crm_element_value(action->xml, XML_ATTR_ID);	if(id == NULL) {		/* error */		te_log_action(LOG_ERR, "Corrupted command %s: no ID",			      crm_element_name(action->xml));		crm_log_xml_err(action->xml, "[corrupt cmd]");			} else if(action->type == action_type_pseudo){		te_log_action(LOG_INFO, "Executing pseudo-event: %d",			      action->id);				action->complete = TRUE;		process_trigger(action->id);		return TRUE;	} else if(action->type == action_type_rsc) {		return te_rsc_command(action);	} else if(action->type == action_type_crm) {		const char *task = NULL;		task = crm_element_value(action->xml, XML_LRM_ATTR_TASK);		CRM_DEV_ASSERT(task != NULL);		if(safe_str_eq(task, CRM_OP_FENCE)) {			return te_fence_node(action);		} else {			return te_crm_command(action);		}			} else {		te_log_action(LOG_ERR,			      "Failed on unsupported command type: %s (id=%s)",			      crm_element_name(action->xml), id);	}	return FALSE;}
8182	/local/tlutelli/issta_data/temp/c/2005_temp/2005/8182/11a521e181190e8a303707d7d4f3b8df6e4ea2fe/actions.c/clean/crm/tengine/actions.c