if(node == NULL || other_node == NULL) { continue;   } else if(node->weight < 0 || other_node->weight < 0) { new_node = node_copy(node); new_node->weight = -1; } else { new_node = node_copy(node); new_node->weight = node->weight + other_node->weight; if(new_node->weight != 0) { new_node->weight = new_node->weight /2.0; } } if(filter && new_node->weight < 0) { 
if(node_merge_weights(new_node, other_node) == FALSE) { 
node_list_and(GListPtr list1, GListPtr list2, gboolean filter){	GListPtr result = NULL;	int lpc = 0;	crm_debug("start");		for(lpc = 0; lpc < g_list_length(list1); lpc++) {		node_t *node = (node_t*)g_list_nth_data(list1, lpc);		node_t *new_node = NULL;		node_t *other_node = pe_find_node(list2, node->details->uname);		if(node == NULL || other_node == NULL) {			continue;						// merge node weights		} else if(node->weight < 0 || other_node->weight < 0) {			new_node = node_copy(node);			new_node->weight = -1;		} else {			new_node = node_copy(node);			new_node->weight = 				node->weight + other_node->weight;			if(new_node->weight != 0) {				new_node->weight = new_node->weight /2.0;			}		}		if(filter && new_node->weight < 0) {			crm_free(new_node);		} else {			result = g_list_append(result, new_node);		}	}	crm_debug("end");	return result;}
8182	/local/tlutelli/issta_data/temp/c/2005_temp/2005/8182/8430e470ae35d5b2fef7bbb4d7a1a2225c5dcb7e/utils.c/clean/crm/pengine/utils.c