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;