From 08c8ff154fbcfa24ed89df7dfdedd5f4e0deab77 Mon Sep 17 00:00:00 2001 From: "C. McEnroe" Date: Sun, 29 Nov 2020 16:57:55 -0500 Subject: Factor out uint32_t stringify --- archive.h | 9 +++++++++ concat.c | 4 +--- export.c | 4 +--- 3 files changed, 11 insertions(+), 6 deletions(-) diff --git a/archive.h b/archive.h index 3605a4b..0b8b6d8 100644 --- a/archive.h +++ b/archive.h @@ -25,6 +25,7 @@ * covered work. */ +#include #include #include #include @@ -54,6 +55,14 @@ extern const char *baseTitle; extern const char *baseMailto; extern const char *baseSubscribe; +static inline struct U32 { + char s[sizeof("4294967295")]; +} u32(uint32_t u) { + struct U32 buf; + snprintf(buf.s, sizeof(buf.s), "%" PRIu32, u); + return buf; +} + static inline struct ISO8601 { char s[sizeof("0000-00-00T00:00:00Z")]; } iso8601(time_t time) { diff --git a/concat.c b/concat.c index c59a828..bd41913 100644 --- a/concat.c +++ b/concat.c @@ -82,10 +82,8 @@ void concatData( } static char *uidPath(uint32_t uid, const char *type) { - char str[32]; - snprintf(str, sizeof(str), "%" PRIu32, uid); struct Variable vars[] = { - { "uid", str }, + { "uid", u32(uid).s }, { "type", type }, {0}, }; diff --git a/export.c b/export.c index 2b579c3..d4039e2 100644 --- a/export.c +++ b/export.c @@ -40,10 +40,8 @@ #include "imap.h" static char *exportPath(uint32_t uid, const char *type) { - char str[32]; - snprintf(str, sizeof(str), "%" PRIu32, uid); struct Variable vars[] = { - { "uid", str }, + { "uid", u32(uid).s }, { "type", type }, {0}, }; -- cgit 1.4.1