Index: apps/app_queue.c =================================================================== --- apps/app_queue.c (revision 92323) +++ apps/app_queue.c (working copy) @@ -2090,6 +2090,11 @@ } winner = ast_waitfor_n(watchers, pos, to); for (o = outgoing; o; o = o->q_next) { + /* same as a comparison in the else case below, but we need to copy this information even if the else isn't taken */ + if(o->chan && o->chan == winner) { + ast_copy_string(on, o->member->interface, sizeof(on)); + ast_copy_string(membername, o->member->membername, sizeof(membername)); + } if (o->stillgoing && (o->chan) && (o->chan->_state == AST_STATE_UP)) { if (!peer) { if (option_verbose > 2) @@ -2097,10 +2102,6 @@ peer = o; } } else if (o->chan && (o->chan == winner)) { - - ast_copy_string(on, o->member->interface, sizeof(on)); - ast_copy_string(membername, o->member->membername, sizeof(membername)); - if (!ast_strlen_zero(o->chan->call_forward) && !forwardsallowed) { if (option_verbose > 2) ast_verbose(VERBOSE_PREFIX_3 "Forwarding %s to '%s' prevented.\n", in->name, o->chan->call_forward);