diff --git a/channels/chan_sip.c b/channels/chan_sip.c
index 4d0bbf8410209483f0ffbbaad22e3d73ea78451c..cf758c49ee1a123bc98adf8ac648c9c0519f9e22 100644
--- a/channels/chan_sip.c
+++ b/channels/chan_sip.c
@@ -16796,7 +16796,7 @@ static int handle_request_invite(struct sip_pvt *p, struct sip_request *req, int
 				struct ast_channel *bridgepeer = NULL;
 				struct sip_pvt *bridgepvt = NULL;
 				if ((bridgepeer = ast_bridged_channel(p->owner))) {
-					if (IS_SIP_TECH(bridgepeer->tech)) {
+					if (IS_SIP_TECH(bridgepeer->tech) && !ast_check_hangup(bridgepeer)) {
 						bridgepvt = (struct sip_pvt*)bridgepeer->tech_pvt;
 						/* Does the bridged peer have T38 ? */
 						if (bridgepvt->t38.state == T38_ENABLED) {