void add_weeks(ha_time_t * a_time, int extra) { if (a_time->has->weeks == FALSE) { crm_trace("has->weeks == FALSE"); return; } if (extra < 0) { sub_weeks(a_time, -extra); } else { do_add_field(a_time, weeks, extra, weeks_in_year(a_time->years), add_weekyears); } convert_from_weekdays(a_time); }
void add_yeardays(ha_time_t * a_time, int extra) { if (a_time->has->yeardays == FALSE) { crm_trace("has->yeardays == FALSE"); return; } if (extra < 0) { sub_yeardays(a_time, -extra); } else { do_add_field(a_time, yeardays, extra, (is_leap_year(a_time->years) ? 366 : 365), add_ordinalyears); } convert_from_ordinal(a_time); }
void add_days(ha_time_t * a_time, int extra) { if (a_time->has->days == FALSE) { crm_trace("has->days == FALSE"); return; } if (extra < 0) { sub_days(a_time, -extra); } else { do_add_field(a_time, days, extra, days_per_month(a_time->months, a_time->years), add_months); } convert_from_gregorian(a_time); }
void add_yeardays(ha_time_t * a_time, int extra) { if (a_time->has->yeardays == FALSE) { crm_trace("has->yeardays == FALSE"); return; } if (extra < 0) { sub_yeardays(a_time, -extra); } else { /* coverity[result_independent_of_operands] Not interesting */ do_add_field(a_time, yeardays, extra, (is_leap_year(a_time->years) ? 366 : 365), add_ordinalyears); } convert_from_ordinal(a_time); }
void add_months(ha_time_t * a_time, int extra) { int max = 0; if (a_time->has->months == FALSE) { crm_trace("has->months == FALSE"); return; } if (extra < 0) { sub_months(a_time, -extra); } else { do_add_field(a_time, months, extra, 12, add_years); } max = days_per_month(a_time->months, a_time->years); if (a_time->days > max) { a_time->days = max; } convert_from_gregorian(a_time); }