ast_mutex_unlock(&p->lock);
return -1;
}
- p->proceeding = 1;
ast_setstate(ast, AST_STATE_DIALING);
pri_rel(p->pri);
break;
}
#ifdef PRI_EVENT_PROCEEDING
- if (!p->proceeding && p->sig==SIG_PRI && p->pri) {
+ if (!p->proceeding && p->sig==SIG_PRI && p->pri && !p->outgoing) {
if (p->pri->pri) {
if (!pri_grab(p, p->pri)) {
#ifdef PRI_PROGRESS
break;
case AST_CONTROL_RINGING:
#ifdef ZAPATA_PRI
- if (!p->proceeding && p->sig==SIG_PRI && p->pri) {
+ if (!p->proceeding && p->sig==SIG_PRI && p->pri && !p->outgoing) {
if (p->pri->pri) {
if (!pri_grab(p, p->pri)) {
pri_acknowledge(p->pri->pri,p->call, p->prioffset, 1);
ast_log(LOG_DEBUG,"Received AST_CONTROL_PROGRESS on %s\n",chan->name);
#ifdef ZAPATA_PRI
#ifdef PRI_EVENT_PROCEEDING
- if (!p->proceeding && p->sig==SIG_PRI && p->pri) {
+ if (!p->proceeding && p->sig==SIG_PRI && p->pri && !p->outgoing) {
if (p->pri->pri) {
if (!pri_grab(p, p->pri)) {
#ifdef PRI_PROGRESS