diff --git a/channels/chan_sip.c b/channels/chan_sip.c index ccc77314e4..f0a0c047c3 100644 --- a/channels/chan_sip.c +++ b/channels/chan_sip.c @@ -3095,7 +3095,7 @@ static int update_call_counter(struct sip_pvt *fup, int event) if (ast_test_flag(&fup->flags[1], SIP_PAGE2_INC_RINGING)) { if (*inringing > 0) (*inringing)--; - else + else if (!ast_test_flag(&fup->flags[0], SIP_REALTIME) || ast_test_flag(&fup->flags[1], SIP_PAGE2_RTCACHEFRIENDS)) ast_log(LOG_WARNING, "Inringing for peer '%s' < 0?\n", fup->peername); ast_clear_flag(&fup->flags[1], SIP_PAGE2_INC_RINGING); } @@ -3138,7 +3138,7 @@ static int update_call_counter(struct sip_pvt *fup, int event) if (ast_test_flag(&fup->flags[1], SIP_PAGE2_INC_RINGING)) { if (*inringing > 0) (*inringing)--; - else + else if (!ast_test_flag(&fup->flags[0], SIP_REALTIME) || ast_test_flag(&fup->flags[1], SIP_PAGE2_RTCACHEFRIENDS)) ast_log(LOG_WARNING, "Inringing for peer '%s' < 0?\n", p->name); ast_clear_flag(&fup->flags[1], SIP_PAGE2_INC_RINGING); }