diration.h fix, AUTHOR add

This commit is contained in:
Your Name 2023-12-05 15:01:24 +03:00
parent baea018529
commit 207347cd10
5 changed files with 39 additions and 5 deletions

5
AUTHORS Normal file
View File

@ -0,0 +1,5 @@
micro-utils:
8nlight (8nlight @ disroot <dot> org)
Thanks:
builder, echo: Kind_Foxie (fedi: KindFoxie @ lamp <dot> leemon <dot> network)

View File

@ -15,6 +15,11 @@ int main(const int argc, const char **argv) {
for (;;)
sleep(INT_MAX);
usleep(mu_parse_duration(argv[1]));
unsigned long long sec = 0;
for (int i = 1; i < argc; i++)
sec += mu_parse_duration(argv[i]);
usleep(sec);
return 0;
}

View File

@ -7,19 +7,40 @@ unsigned long long parse_uint(const char *str) {
char *p = NULL;
unsigned long long res = strtoull(str, &p, 0);
if (*p)
return 0;
/* Parse suffix */
if (*p) {
switch (p[0]) {
case 'm':
res *= 60;
break;
case 'h':
res *= 3600;
break;
case 'd':
res *= 86400;
break;
case 's':
default:
break;
}
}
return res;
}
unsigned long long mu_parse_duration(const char *arg) {
if (strchr(arg, '.')) {
/* TODO */
}
else
else {
/* Sec */
return parse_uint(arg) * 1000000;
}
return 0;
}

View File

@ -20,6 +20,7 @@ char *mu_make_path(const char *restrict prog_name, const char *restrict src, con
else
snprintf(full_path, len, "%s/%s", src, dst);
return full_path;
}

View File

@ -25,6 +25,8 @@ mode_t mu_parse_mode(const char *s, mode_t cur_mode) {
return 0;
mode = 0;
/* Default + */
int append = 1;
mode_t mask = 0;