aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
-rw-r--r--src/gsm/lapd_core.c4
1 files changed, 4 insertions, 0 deletions
diff --git a/src/gsm/lapd_core.c b/src/gsm/lapd_core.c
index cf25f3de..6a56572b 100644
--- a/src/gsm/lapd_core.c
+++ b/src/gsm/lapd_core.c
@@ -1578,6 +1578,10 @@ static int lapd_rx_i(struct msgb *msg, struct lapd_msg_ctx *lctx)
msgb_free(msg);
}
+ /* the L3 or higher (called in-line above via send_dl_l3) might have destroyed the
+ * data link meanwhile. See OS#1761 */
+ if (dl->state == LAPD_STATE_NULL)
+ return 0;
} else
LOGDL(dl, LOGL_INFO, "I frame ignored during own receiver busy condition\n");