From: Bastian Dehn Date: Sun, 9 Feb 2025 10:49:40 +0000 (+0100) Subject: add set time method X-Git-Tag: 1.3.5^2~7 X-Git-Url: https://gitweb.hhaalo.de/?a=commitdiff_plain;h=880c6ff03480c14495520e862804defce798ff9e;p=feierabend.git add set time method --- diff --git a/src/feierabend.c b/src/feierabend.c index 3bee416..48f31e5 100644 --- a/src/feierabend.c +++ b/src/feierabend.c @@ -59,6 +59,17 @@ void print_german_long_date(struct tm* time_info) weekday = NULL; } +void set_time(time_t* value, struct tm* tm_value, int hour, int minutes) +{ + time(value); + + localtime_r(value, tm_value); + tm_value->tm_hour = hour; + tm_value->tm_min = minutes; + + *value = mktime(tm_value); +} + int main(int argc, char* argv[]) { if (argc < 3 || (argc > 3 && argc < 5)) { @@ -70,19 +81,12 @@ int main(int argc, char* argv[]) printf("Version: %s\n\n", PROJECT_VERSION); - time(fabend->begin); - localtime_r(fabend->begin, fabend->begin_tm); - fabend->begin_tm->tm_hour = atoi(argv[1]); - fabend->begin_tm->tm_min = atoi(argv[2]); - *fabend->begin = mktime(fabend->begin_tm); + set_time(fabend->begin, fabend->begin_tm, atoi(argv[1]), atoi(argv[2])); time(fabend->now); localtime_r(fabend->now, fabend->now_tm); - if (argc == 5) { - fabend->now_tm->tm_hour = atoi(argv[3]); - fabend->now_tm->tm_min = atoi(argv[4]); - *fabend->now = mktime(fabend->now_tm); - } + if (argc == 5) + set_time(fabend->now, fabend->now_tm, atoi(argv[3]), atoi(argv[4])); *fabend->worktime = get_eight_hour_end_worktime(*fabend->begin); localtime_r(fabend->worktime, fabend->work_end_tm);