[rsl] Change logging of handling reason 0x18 in rsl_rx_conn_fail (Andreas Eversberg)

Release the channel when it is not used, otherwise claim it
is still in use...
This commit is contained in:
Holger Freyther 2009-06-02 02:55:17 +00:00
parent 4f584c3d4b
commit f7b2a0ec7f
1 changed files with 5 additions and 3 deletions

View File

@ -680,12 +680,14 @@ static int rsl_rx_conn_fail(struct msgb *msg)
if (TLVP_PRESENT(&tp, RSL_IE_CAUSE) &&
TLVP_LEN(&tp, RSL_IE_CAUSE) >= 1 &&
*TLVP_VAL(&tp, RSL_IE_CAUSE) == 0x18) {
DEBUGPC(DRSL, "IGNORING\n");
return 0;
if (msg->lchan->use_count > 0) {
DEBUGPC(DRSL, "Cause 0x18 IGNORING, lchan in use! (%d times)\n", msg->lchan->use_count);
return 0;
}
}
}
DEBUGPC(DRSL, "\n");
DEBUGPC(DRSL, "RELEASING.\n");
/* FIXME: only free it after channel release ACK */
return rsl_chan_release(msg->lchan);