int64_t elapsed = (now - timer->start);
timer->tick = (elapsed / timer->interval) / 1000;
- timer->samplecount = timer->tick * timer->samples;
+ timer->samplecount = (uint32_t)(timer->tick * timer->samples);
return SWITCH_STATUS_SUCCESS;
}
TIMER_MATRIX[timer->interval].count++;
switch_mutex_unlock(globals.mutex);
timer->private_info = private_info;
- private_info->start = private_info->reference = TIMER_MATRIX[timer->interval].tick;
+ private_info->start = (switch_size_t)(private_info->reference = TIMER_MATRIX[timer->interval].tick);
private_info->start -= 2; /* switch_core_timer_init sets samplecount to samples, this makes first next() step once */
private_info->roll = TIMER_MATRIX[timer->interval].roll;
private_info->ready = 1;
#define check_roll() if (private_info->roll < TIMER_MATRIX[timer->interval].roll) { \
private_info->roll++; \
- private_info->reference = private_info->start = TIMER_MATRIX[timer->interval].tick; \
+ private_info->reference = (switch_size_t)(private_info->start = TIMER_MATRIX[timer->interval].tick); \
private_info->start--; /* Must have a diff */ \
} \
}
/* sync the clock */
- private_info->reference = timer->tick = TIMER_MATRIX[timer->interval].tick;
+ private_info->reference = (switch_size_t)(timer->tick = TIMER_MATRIX[timer->interval].tick);
/* apply timestamp */
timer_step(timer);
/* sync up timer if it's not been called for a while otherwise it will return instantly several times until it catches up */
if (delta < -1) {
- private_info->reference = timer->tick = TIMER_MATRIX[timer->interval].tick;
+ private_info->reference = (switch_size_t)(timer->tick = TIMER_MATRIX[timer->interval].tick);
}
timer_step(timer);
timer->tick = TIMER_MATRIX[timer->interval].tick;
if (timer->tick < private_info->reference) {
- timer->diff = private_info->reference - timer->tick;
+ timer->diff = (switch_size_t)(private_info->reference - timer->tick);
} else {
timer->diff = 0;
}