diff --git a/apps/app_queue.c b/apps/app_queue.c index 73719a9d92..85d6ec3263 100644 --- a/apps/app_queue.c +++ b/apps/app_queue.c @@ -3869,10 +3869,10 @@ static void rt_handle_member_record(struct call_queue *q, char *category, struct m->dead = 0; /* Do not delete this one. */ ast_copy_string(m->rt_uniqueid, rt_uniqueid, sizeof(m->rt_uniqueid)); if (paused_str) { - m->paused = paused; - if (paused && m->lastpause == 0) { + if (paused && !m->paused) { time(&m->lastpause); /* XXX: Should this come from realtime? */ } + m->paused = paused; ast_devstate_changed(m->paused ? QUEUE_PAUSED_DEVSTATE : QUEUE_UNPAUSED_DEVSTATE, AST_DEVSTATE_CACHABLE, "Queue:%s_pause_%s", q->name, m->interface); }