case 2:
{
string output = "";
-
- if (tmp_seconds)
- output = count_seconds(tmp_seconds);
-
- if (tmp_minutes)
- {
- output = strcat(
- count_minutes(tmp_minutes),
- ((output != "") ? strcat(", ", output) : ""));
- }
-
- if (tmp_hours)
- {
- output = strcat(
- count_hours(tmp_hours),
- ((output != "") ? strcat(", ", output) : ""));
- }
-
- if (tmp_days)
- {
- output = strcat(
- count_days(tmp_days),
- ((output != "") ? strcat(", ", output) : ""));
- }
-
- if (tmp_weeks)
- {
- output = strcat(
- count_weeks(tmp_weeks),
- ((output != "") ? strcat(", ", output) : ""));
- }
-
- if (tmp_years)
- {
- output = strcat(
- count_years(tmp_years),
- ((output != "") ? strcat(", ", output) : ""));
- }
-
+ #define APPEND_TIME(unit) \
+ if (tmp_##unit) output = strcat(output, ((output != "") ? ", " : ""), count_##unit(tmp_##unit))
+ APPEND_TIME(years);
+ APPEND_TIME(weeks);
+ APPEND_TIME(days);
+ APPEND_TIME(hours);
+ APPEND_TIME(minutes);
+ APPEND_TIME(seconds);
+ #undef APPEND_TIME
if (output == "")
return count_seconds(0);
-
return output;
}
case 3: