commit 7b349dd
default
·
2023-05-08 07:30:26 +0000 UTC
parent 6bad235
Backport from xs.
2 files changed,
+14,
-1
+13,
-0
1@@ -12,6 +12,7 @@ xs_str *xs_str_time(time_t t, const char *fmt, int local);
2 time_t xs_parse_time(const char *str, const char *fmt, int local);
3 #define xs_parse_localtime(str, fmt) xs_parse_time(str, fmt, 1)
4 #define xs_parse_utctime(str, fmt) xs_parse_time(str, fmt, 0)
5+xs_str *xs_str_time_diff(time_t time_diff);
6
7 #ifdef XS_IMPLEMENTATION
8
9@@ -37,6 +38,18 @@ xs_str *xs_str_time(time_t t, const char *fmt, int local)
10 }
11
12
13+xs_str *xs_str_time_diff(time_t time_diff)
14+/* returns time_diff in seconds to 'human' units (d:hh:mm:ss) */
15+{
16+ int secs = time_diff % 60;
17+ int mins = (time_diff /= 60) % 60;
18+ int hours = (time_diff /= 60) % 24;
19+ int days = (time_diff /= 24);
20+
21+ return xs_fmt("%d:%02d:%02d:%02d", days, hours, mins, secs);
22+}
23+
24+
25 char *strptime(const char *s, const char *format, struct tm *tm);
26
27 time_t xs_parse_time(const char *str, const char *fmt, int local)
+1,
-1
1@@ -1 +1 @@
2-/* dfdd729248d7169b80cb6a7462fe6c0ba6efeb16 */
3+/* b4f118990f3b8327a033a28bd9ca687c75b23dee */