diff --git a/q931.c b/q931.c index 4fd5ad0..d144eb7 100644 --- a/q931.c +++ b/q931.c @@ -5408,16 +5408,17 @@ static void t303_expiry(void *data) c->t303_expirycnt++; c->t303_timer = 0; - /*! - * \todo XXX Resending the SETUP message loses all facility ies - * that the original may have had. Actually any message Q.931 - * retransmits will lose the facility ies. - */ - if (c->cause != -1) { /* We got a DISCONNECT, RELEASE, or RELEASE_COMPLETE and no other responses. */ pri_fake_clearing(c); } else if (c->t303_expirycnt < 2) { + /*! + * \todo XXX Resending the SETUP message loses any facility ies + * that the original may have had that were not added by + * pri_call_add_standard_apdus(). Actually any message Q.931 + * retransmits will lose the facility ies. + */ + pri_call_add_standard_apdus(ctrl, c); c->cc.saved_ie_contents.length = 0; c->cc.saved_ie_flags = 0; if (ctrl->link.next && !ctrl->bri)