summaryrefslogtreecommitdiffstats
path: root/src/gb/gprs_bssgp.c
diff options
context:
space:
mode:
Diffstat (limited to 'src/gb/gprs_bssgp.c')
-rw-r--r--src/gb/gprs_bssgp.c6
1 files changed, 5 insertions, 1 deletions
diff --git a/src/gb/gprs_bssgp.c b/src/gb/gprs_bssgp.c
index 520868e0..d27a94f7 100644
--- a/src/gb/gprs_bssgp.c
+++ b/src/gb/gprs_bssgp.c
@@ -764,7 +764,11 @@ int bssgp_fc_in(struct bssgp_flow_control *fc, struct msgb *msg,
}
if (bssgp_fc_needs_queueing(fc, llc_pdu_len)) {
- return fc_enqueue(fc, msg, llc_pdu_len, priv);
+ int rc;
+ rc = fc_enqueue(fc, msg, llc_pdu_len, priv);
+ if (rc)
+ msgb_free(msg);
+ return rc;
} else {
/* record the time we transmitted this PDU */
osmo_gettimeofday(&time_now, NULL);