if(g_hash_table_size(join_requests)
if((ssize_t)g_hash_table_size(join_requests)
do_dc_join_offer_all(long long action,		     enum crmd_fsa_cause cause,		     enum crmd_fsa_state cur_state,		     enum crmd_fsa_input current_input,		     fsa_data_t *msg_data){	/* reset everyones status back to down or in_ccm in the CIB */	crm_data_t *cib_copy   = get_cib_copy(fsa_cib_conn);	crm_data_t *fragment   = create_cib_fragment(NULL, NULL);	crm_data_t *update     = find_xml_node(fragment, XML_TAG_CIB, TRUE);	crm_data_t *tmp1       = get_object_root(XML_CIB_TAG_STATUS, cib_copy);	crm_data_t *tmp2       = NULL;	initialize_join(TRUE);		/* catch any nodes that are active in the CIB but not in the CCM list*/	update = get_object_root(XML_CIB_TAG_STATUS, update);	CRM_DEV_ASSERT(update != NULL);	xml_child_iter(		tmp1, node_entry, XML_CIB_TAG_STATE,		const char *node_id = crm_element_value(node_entry, XML_ATTR_UNAME);		gpointer a_node = g_hash_table_lookup(			fsa_membership_copy->members, node_id);		if(a_node != NULL || (safe_str_eq(fsa_our_uname, node_id))) {			/* handled by do_update_cib_node() */			continue;		}		tmp2 = create_node_state(			node_id, node_id, NULL,			XML_BOOLEAN_NO, NULL, CRMD_JOINSTATE_PENDING, NULL);		add_node_copy(update, tmp2);		free_xml(tmp2);		);		/* now process the CCM data */	do_update_cib_nodes(fragment, TRUE);	free_xml(cib_copy);/*  	free_xml(fragment);  *//* BUG!  This should be able to be freed. * I cant find any reason why it shouldnt be able to be, * but libxml still corrupts memory */	#if 0	/* Avoid ordered message delays caused when the CRMd proc	 * isnt running yet (ie. send as a broadcast msg which are never	 * sent ordered.	 */	send_request(NULL, NULL, CRM_OP_WELCOME,		     NULL, CRM_SYSTEM_CRMD, NULL);	#else	crm_debug("Offering membership to %d clients",		  fsa_membership_copy->members_size);		g_hash_table_foreach(fsa_membership_copy->members,			     join_send_offer, NULL);	#endif/* No point hanging around in S_INTEGRATION if we're the only ones here! */	if(g_hash_table_size(join_requests)	   >= fsa_membership_copy->members_size) {		crm_info("Not expecting any join acks");		register_fsa_input(C_FSA_INTERNAL, I_INTEGRATED, NULL);		return I_NULL;	}	/* dont waste time by invoking the pe yet; */	crm_debug("Still waiting on %d outstanding join acks",		  fsa_membership_copy->members_size		  - g_hash_table_size(join_requests));	return I_NULL;}