aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
-rw-r--r--channels/chan_sip.c2
1 files changed, 1 insertions, 1 deletions
diff --git a/channels/chan_sip.c b/channels/chan_sip.c
index 1aff65fc8..3046ea3d0 100644
--- a/channels/chan_sip.c
+++ b/channels/chan_sip.c
@@ -16886,7 +16886,7 @@ static int sip_devicestate(void *data)
else if (p->call_limit && p->inUse)
/* Not busy, but we do have a call */
res = AST_DEVICE_INUSE;
- else if (p->maxms && (p->lastms > p->maxms))
+ else if (p->maxms && ((p->lastms > p->maxms) || (p->lastms < 0)))
/* We don't have a call. Are we reachable at all? Requires qualify= */
res = AST_DEVICE_UNAVAILABLE;
else /* Default reply if we're registered and have no other data */