diff --git a/src/mod/applications/mod_callcenter/mod_callcenter.c b/src/mod/applications/mod_callcenter/mod_callcenter.c index 9f567120b8..6db5f8a2cd 100644 --- a/src/mod/applications/mod_callcenter/mod_callcenter.c +++ b/src/mod/applications/mod_callcenter/mod_callcenter.c @@ -1794,8 +1794,9 @@ static void *SWITCH_THREAD_FUNC outbound_agent_thread_run(switch_thread_t *threa } else { /* Agent didn't answer or originate failed */ int delay_next_agent_call = 0; - sql = switch_mprintf("UPDATE members SET state = '%q', serving_agent = '', serving_system = ''" + sql = switch_mprintf("UPDATE members SET state = case state when '%q' then '%q' else state end, serving_agent = '', serving_system = ''" " WHERE serving_agent = '%q' AND serving_system = '%q' AND uuid = '%q' AND system = 'single_box'", + cc_member_state2str(CC_MEMBER_STATE_TRYING), /* Only switch to Waiting from Trying (state may be set to Abandoned in callcenter_function()) */ cc_member_state2str(CC_MEMBER_STATE_WAITING), h->agent_name, h->agent_system, h->member_uuid); cc_execute_sql(NULL, sql, NULL); diff --git a/src/mod/codecs/mod_com_g729/Makefile.am b/src/mod/codecs/mod_com_g729/Makefile.am index e6586e159f..b311a7c641 100644 --- a/src/mod/codecs/mod_com_g729/Makefile.am +++ b/src/mod/codecs/mod_com_g729/Makefile.am @@ -1,7 +1,7 @@ include $(top_srcdir)/build/modmake.rulesam MODNAME=mod_com_g729 -VERSION=194 +VERSION=201501231218 if ISLINUX diff --git a/src/switch_time.c b/src/switch_time.c index 0a4a94d08c..be3debf560 100644 --- a/src/switch_time.c +++ b/src/switch_time.c @@ -416,9 +416,9 @@ static switch_status_t timerfd_start_interval(interval_timer_t *it, int interval val.it_interval.tv_sec = interval / 1000; val.it_interval.tv_nsec = (interval % 1000) * 1000000; val.it_value.tv_sec = 0; - val.it_value.tv_nsec = val.it_interval.tv_nsec; + val.it_value.tv_nsec = 100000; - if (timerfd_settime(fd, TFD_TIMER_ABSTIME, &val, NULL) < 0) { + if (timerfd_settime(fd, 0, &val, NULL) < 0) { close(fd); return SWITCH_STATUS_GENERR; } @@ -1038,10 +1038,10 @@ SWITCH_MODULE_RUNTIME_FUNCTION(softtimer_runtime) if (tfd > -1) { spec.it_interval.tv_sec = 0; spec.it_interval.tv_nsec = runtime.microseconds_per_tick * 1000; - spec.it_value.tv_sec = spec.it_interval.tv_sec; - spec.it_value.tv_nsec = spec.it_interval.tv_nsec; + spec.it_value.tv_sec = 0; + spec.it_value.tv_nsec = 100000; - if (timerfd_settime(tfd, TFD_TIMER_ABSTIME, &spec, NULL)) { + if (timerfd_settime(tfd, 0, &spec, NULL)) { close(tfd); tfd = -1; } @@ -1109,7 +1109,7 @@ SWITCH_MODULE_RUNTIME_FUNCTION(softtimer_runtime) #ifdef HAVE_TIMERFD_CREATE if (last_MICROSECONDS_PER_TICK != runtime.microseconds_per_tick) { spec.it_interval.tv_nsec = runtime.microseconds_per_tick * 1000; - timerfd_settime(tfd, TFD_TIMER_ABSTIME, &spec, NULL); + timerfd_settime(tfd, 0, &spec, NULL); } last_MICROSECONDS_PER_TICK = runtime.microseconds_per_tick;