rem: if (insert_ucontact(r, _c, _e + act_time, _q, &cid, FIFO_CSEQ, &c) < 0) {
add: if (insert_ucontact_rep(r, _c, _e + act_time, _q, &cid, FIFO_CSEQ, _r, &c) < 0) {
context: static inline int add_contact(udomain_t* _d, str* _u, str* _c, time_t _e, float _q){	urecord_t* r;	ucontact_t* c = 0;	int res;	str cid;		if (_e == 0) {		LOG(L_ERR, "fifo_add_contact(): expires == 0, giving up\n");		return -1;	}	get_act_time();	res = get_urecord(_d, _u, &r);	if (res < 0) {		LOG(L_ERR, "fifo_add_contact(): Error while getting record\n");		return -2;	}	if (res >  0) { /* Record not found */		if (insert_urecord(_d, _u, &r) < 0) {			LOG(L_ERR, "fifo_add_contact(): Error while creating new urecord\n");			return -3;		}	} else {		if (get_ucontact(r, _c, &c) < 0) {			LOG(L_ERR, "fifo_add_contact(): Error while obtaining ucontact\n");			return -4;		}	}			cid.s = FIFO_CALLID;	cid.len = FIFO_CALLID_LEN;	if (c) {		if (update_ucontact(c, _e + act_time, _q, &cid, FIFO_CSEQ) < 0) {			LOG(L_ERR, "fifo_add_contact(): Error while updating contact\n");			release_urecord(r);			return -5;		}	} else {		if (insert_ucontact(r, _c, _e + act_time, _q, &cid, FIFO_CSEQ, &c) < 0) {			LOG(L_ERR, "fifo_add_contact(): Error while inserting contact\n");			release_urecord(r);			return -6;		}	}		release_urecord(r);	return 0;}