ast_copy_string(sd->label, exten, sizeof(sd->label));
sd->instance = speeddialInstance++;
+ sd->parent = d;
+
sd->next = d->speeddials;
d->speeddials = sd;
}
or you won't get keypad messages in some situations. */
transmit_callinfo(s, ast->cid.cid_name, ast->cid.cid_num, ast->exten, ast->exten, l->instance, sub->callid, 2);
transmit_callstate(s, l->instance, SKINNY_CONNECTED, sub->callid);
+ transmit_selectsoftkeys(s, l->instance, sub->callid, KEYDEF_CONNECTED);
transmit_displaypromptstatus(s, "Connected", 0, l->instance, sub->callid);
return res;
}
if (skinnydebug)
ast_verbose("Received Stimulus: Hold(%d)\n", instance);
+ if (!sub)
+ break;
+
if (sub->onhold) {
skinny_unhold(sub);
} else {
if (ast_strlen_zero(l->lastnumberdialed)) {
ast_log(LOG_WARNING, "Attempted redial, but no previously dialed number found.\n");
- return 0;
+ break;
}
if (!ast_ignore_pattern(c->context, l->lastnumberdialed)) {
transmit_tone(s, SKINNY_SILENCE);
}
} else if (res) {
ast_log(LOG_WARNING, "Transfer attempt failed\n");
- return 0;
+ break;
}
#endif
} else {