aboutsummaryrefslogtreecommitdiffstats
path: root/openbsc/src/silent_call.c
diff options
context:
space:
mode:
authorHolger Hans Peter Freyther <zecke@selfish.org>2010-06-28 17:09:29 +0800
committerHolger Hans Peter Freyther <zecke@selfish.org>2010-06-28 18:01:47 +0800
commit4049455d744455dd48fa359a220822303fc3a5be (patch)
tree262a428bb44471ee7d7ddbdf89421633ba409392 /openbsc/src/silent_call.c
parent2412a07965ace5fc425b401438d21ff86ceeb2df (diff)
bsc_msc: Remove use_count from the subscriber connection
A channel will be released in case of * Errors via the clear_request callback... * no more transactions and operations are going on. This means that if we do something without a transaction the channel might be closed down right away. The bug fix will be to create a transaction/operation.
Diffstat (limited to 'openbsc/src/silent_call.c')
-rw-r--r--openbsc/src/silent_call.c4
1 files changed, 2 insertions, 2 deletions
diff --git a/openbsc/src/silent_call.c b/openbsc/src/silent_call.c
index 397a3e4b9..7ba451b65 100644
--- a/openbsc/src/silent_call.c
+++ b/openbsc/src/silent_call.c
@@ -57,7 +57,6 @@ static int paging_cb_silent(unsigned int hooknum, unsigned int event,
conn->silent_call = 1;
/* increment lchan reference count */
dispatch_signal(SS_SCALL, S_SCALL_SUCCESS, &sigdata);
- use_subscr_con(conn);
break;
case GSM_PAGING_EXPIRED:
DEBUGP(DSMS, "expired\n");
@@ -135,7 +134,8 @@ int gsm_silent_call_stop(struct gsm_subscriber *subscr)
if (!conn->silent_call)
return -EINVAL;
- put_subscr_con(conn);
+ conn->silent_call = 0;
+ msc_release_connection(conn);
return 0;
}