diff --git a/channels/chan_zap.c b/channels/chan_zap.c
index 2709b02d91e9bae495d65045b8212d78d91ed527..aae045549e8cd5fb40ed470103415c16154b4c94 100755
--- a/channels/chan_zap.c
+++ b/channels/chan_zap.c
@@ -7239,7 +7239,7 @@ static inline int available(struct zt_pvt *p, int channelmatch, int groupmatch,
 	}
 	
 	if ((p->owner->_state != AST_STATE_UP) &&
-		(p->owner->_state != AST_STATE_RINGING)) {
+		((p->owner->_state != AST_STATE_RINGING) || p->outgoing)) {
 		/* If the current call is not up, then don't allow the call */
 		return 0;
 	}