aboutsummaryrefslogtreecommitdiffstats
path: root/openbsc/src/gprs/gprs_sgsn.c
diff options
context:
space:
mode:
authorJacob Erlbeck <jerlbeck@sysmocom.de>2015-01-23 13:52:55 +0100
committerHolger Hans Peter Freyther <holger@moiji-mobile.com>2015-01-26 09:10:06 +0100
commit37139e5933337e3e24f4bd83955c3492123e9ed0 (patch)
treeba77d2d00f44716ad86597fb8d1bf703083dd891 /openbsc/src/gprs/gprs_sgsn.c
parent1d778fdce3bc4aab16dc203463d0067f2f063d16 (diff)
gprs: Do not put the subscr in gprs_subscr_delete
Currently gprs_subscr_delete implicitely calls subscr_put, which makes the code more complex than necessary (additional subscr_get) in a few places. It also makes it more difficult to see, whether get/put are balanced within a function. In addition, the functions are not named consistently (gprs_subscr_delete vs. gprs_subscr_put_and_cancel). This commit changes the semantics of gprs_subscr_delete and indirectly of gprs_subscr_put_and_cancel to not call subscr_put on their argument, but to leave that for the caller to do it explicitely. It renames gprs_subscr_put_and_cancel to gprs_subscr_cancel to reflect that change in the name, too. Sponsored-by: On-Waves ehf
Diffstat (limited to 'openbsc/src/gprs/gprs_sgsn.c')
-rw-r--r--openbsc/src/gprs/gprs_sgsn.c1
1 files changed, 1 insertions, 0 deletions
diff --git a/openbsc/src/gprs/gprs_sgsn.c b/openbsc/src/gprs/gprs_sgsn.c
index acf37a28b..fdf4840b1 100644
--- a/openbsc/src/gprs/gprs_sgsn.c
+++ b/openbsc/src/gprs/gprs_sgsn.c
@@ -200,6 +200,7 @@ void sgsn_mm_ctx_free(struct sgsn_mm_ctx *mm)
mm->subscr = NULL;
subscr->sgsn_data->mm = NULL;
gprs_subscr_delete(subscr);
+ subscr_put(subscr);
}
/* Free all PDP contexts */