From 2077acfca034178f39e3fa4e86cb8d371f44737c Mon Sep 17 00:00:00 2001 From: hm Date: Thu, 20 May 1999 10:14:57 +0000 Subject: upgrade isdn4bsd from version 0.71 to the just released version 0.81 --- sys/i4b/layer2/i4b_l2fsm.c | 9 ++++++--- 1 file changed, 6 insertions(+), 3 deletions(-) (limited to 'sys/i4b/layer2/i4b_l2fsm.c') diff --git a/sys/i4b/layer2/i4b_l2fsm.c b/sys/i4b/layer2/i4b_l2fsm.c index dbbe0ca..ea04662 100644 --- a/sys/i4b/layer2/i4b_l2fsm.c +++ b/sys/i4b/layer2/i4b_l2fsm.c @@ -27,9 +27,9 @@ * i4b_l2fsm.c - layer 2 FSM * ------------------------- * - * $Id: i4b_l2fsm.c,v 1.14 1999/02/14 09:45:00 hm Exp $ + * $Id: i4b_l2fsm.c,v 1.15 1999/03/16 15:29:06 hm Exp $ * - * last edit-date: [Sun Feb 14 10:31:37 1999] + * last edit-date: [Tue Mar 16 16:27:12 1999] * *---------------------------------------------------------------------------*/ @@ -242,6 +242,7 @@ struct l2state_tab { void i4b_next_l2state(l2_softc_t *l2sc, int event) { int currstate, newstate; + int (*savpostfsmfunc)(int) = NULL; /* check event number */ if(event > N_EVENTS) @@ -292,8 +293,10 @@ void i4b_next_l2state(l2_softc_t *l2sc, int event) if(l2sc->postfsmfunc != NULL) { DBGL2(L2_F_MSG, "i4b_next_l2state", ("FSM executing postfsmfunc!\n")); - (*l2sc->postfsmfunc)(l2sc->postfsmarg); + /* try to avoid an endless loop */ + savpostfsmfunc = l2sc->postfsmfunc; l2sc->postfsmfunc = NULL; + (*savpostfsmfunc)(l2sc->postfsmarg); } } -- cgit v1.1