aboutsummaryrefslogtreecommitdiffstats
path: root/main
diff options
context:
space:
mode:
Diffstat (limited to 'main')
-rw-r--r--main/channel.c4
-rw-r--r--main/timing.c5
2 files changed, 8 insertions, 1 deletions
diff --git a/main/channel.c b/main/channel.c
index daf5b7a8e..7c1e998af 100644
--- a/main/channel.c
+++ b/main/channel.c
@@ -1129,7 +1129,9 @@ __ast_channel_alloc_ap(int needqueue, int state, const char *cid_num, const char
}
if ((tmp->timer = ast_timer_open())) {
- needqueue = 0;
+ if (strcmp(ast_timer_get_name(tmp->timer), "timerfd")) {
+ needqueue = 0;
+ }
tmp->timingfd = ast_timer_fd(tmp->timer);
}
diff --git a/main/timing.c b/main/timing.c
index d15024b32..23d3cf8ee 100644
--- a/main/timing.c
+++ b/main/timing.c
@@ -205,6 +205,11 @@ unsigned int ast_timer_get_max_rate(const struct ast_timer *handle)
return res;
}
+const char *ast_timer_get_name(const struct ast_timer *handle)
+{
+ return handle->holder->iface->name;
+}
+
static char *timing_test(struct ast_cli_entry *e, int cmd, struct ast_cli_args *a)
{
struct ast_timer *timer;