|
|
@ -1691,15 +1691,16 @@ int ast_extension_state(struct ast_channel *c, const char *context, const char *
|
|
|
|
void ast_hint_state_changed(const char *device)
|
|
|
|
void ast_hint_state_changed(const char *device)
|
|
|
|
{
|
|
|
|
{
|
|
|
|
struct ast_hint *hint;
|
|
|
|
struct ast_hint *hint;
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
AST_LIST_LOCK(&hints);
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
AST_LIST_TRAVERSE(&hints, hint, list) {
|
|
|
|
struct ast_state_cb *cblist;
|
|
|
|
struct ast_state_cb *cblist;
|
|
|
|
char buf[AST_MAX_EXTENSION];
|
|
|
|
char buf[AST_MAX_EXTENSION];
|
|
|
|
char *parse;
|
|
|
|
char *parse;
|
|
|
|
char *cur;
|
|
|
|
char *cur;
|
|
|
|
int state;
|
|
|
|
int state;
|
|
|
|
|
|
|
|
|
|
|
|
AST_LIST_LOCK(&hints);
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
AST_LIST_TRAVERSE(&hints, hint, list) {
|
|
|
|
|
|
|
|
ast_copy_string(buf, ast_get_extension_app(hint->exten), sizeof(buf));
|
|
|
|
ast_copy_string(buf, ast_get_extension_app(hint->exten), sizeof(buf));
|
|
|
|
parse = buf;
|
|
|
|
parse = buf;
|
|
|
|
for (cur = strsep(&parse, "&"); cur; cur = strsep(&parse, "&")) {
|
|
|
|
for (cur = strsep(&parse, "&"); cur; cur = strsep(&parse, "&")) {
|
|
|
|