Index: channels/chan_skinny.c =================================================================== --- channels/chan_skinny.c (revision 125948) +++ channels/chan_skinny.c (working copy) @@ -3484,6 +3484,7 @@ l->activesub = l->sub; } } + transmit_callstate(s, l->instance, SKINNY_ONHOOK, sub->callid); transmit_activatecallplane(s, l); transmit_closereceivechannel(s,sub); transmit_stopmediatransmission(s,sub); @@ -5409,11 +5410,9 @@ if (skinnydebug) ast_verb(1, "Received Softkey Event: New Call(%d/%d)\n", instance, callreference); - if (!sub || !sub->owner) { - c = skinny_new(l, AST_STATE_DOWN); - } else { - c = sub->owner; - } + /* New Call ALWAYS gets a new sub-channel */ + c = skinny_new(l, AST_STATE_DOWN); + sub = c->tech_pvt; /* transmit_ringer_mode(s,SKINNY_RING_OFF); transmit_lamp_indication(s, STIMULUS_LINE, l->instance, SKINNY_LAMP_ON); */