rem: for (p_cell=hash_table->entrys[hash_index].first_cell;
add: for (p_cell=get_tm_table()->entrys[hash_index].first_cell;
context: struct cell* t_lookupOriginalT(  struct s_table* hash_table ,	struct sip_msg* p_msg ){	struct cell     *p_cell;	unsigned int     hash_index;	struct sip_msg  *t_msg;	/* start searching in the table */	hash_index = p_msg->hash_index;	LOCK_HASH(hash_index);	DBG("DEBUG: t_lookupOriginalT: searching on hash entry %d\n",hash_index );	/* all the transactions from the entry are compared */	for (p_cell=hash_table->entrys[hash_index].first_cell;		p_cell; p_cell = p_cell->next_cell )	{		t_msg = p_cell->uas.request;		/* we don't cancel CANCELs ;-) */		if (p_cell->uas.request->REQ_METHOD==METHOD_CANCEL)			continue;		/* check lengths now */			if (!EQ_LEN(callid))			continue;		if (get_cseq(t_msg)->number.len!=get_cseq(p_msg)->number.len)			continue;		if (!EQ_LEN(from))			continue;		if (!EQ_LEN(to))			continue;		if (!EQ_REQ_URI_LEN)			continue;		if (!EQ_VIA_LEN(via1))			continue;		/* check the content now */		if (!EQ_STR(callid))			continue;		if (memcmp(get_cseq(t_msg)->number.s,			get_cseq(p_msg)->number.s,get_cseq(p_msg)->number.len)!=0)			continue;		if (!EQ_STR(from))			continue;		if (!EQ_STR(to))			continue;		if (!EQ_REQ_URI_STR)			continue;		if (!EQ_VIA_STR(via1))			continue;		/* found */		DBG("DEBUG: t_lookupOriginalT: canceled transaction"			" found (%p)! \n",p_cell );		REF_UNSAFE( p_cell );		UNLOCK_HASH(hash_index);		DBG("DEBUG: t_lookupOriginalT completed\n");		return p_cell;	}	/* no transaction found */	DBG("DEBUG: t_lookupOriginalT: no CANCEL maching found! \n" );	UNLOCK_HASH(hash_index);	DBG("DEBUG: t_lookupOriginalT completed\n");	return 0;}