From: Zbigniew Jędrzejewski-Szmek Date: Mon, 21 Nov 2022 19:06:55 +0000 (+0100) Subject: basic/strv: check printf arguments to strv_extendf() X-Git-Tag: v253-rc1~475^2 X-Git-Url: http://git.ipfire.org/?a=commitdiff_plain;h=refs%2Fpull%2F25470%2Fhead;p=thirdparty%2Fsystemd.git basic/strv: check printf arguments to strv_extendf() The second argument to _printf_() specifies where the arguments start. We need to use 0 in two cases: when the args in a va_list and can't be checked, and with journald logging functions which accept multiple format strings with multiple argument sets, which the _printf_ checker does not understand. But strv_extendf() can be checked. --- diff --git a/src/basic/strv.h b/src/basic/strv.h index 87a7038a547..f82c76589d0 100644 --- a/src/basic/strv.h +++ b/src/basic/strv.h @@ -45,7 +45,7 @@ static inline int strv_extend(char ***l, const char *value) { return strv_extend_with_size(l, NULL, value); } -int strv_extendf(char ***l, const char *format, ...) _printf_(2,0); +int strv_extendf(char ***l, const char *format, ...) _printf_(2,3); int strv_extend_front(char ***l, const char *value); int strv_push_with_size(char ***l, size_t *n, char *value);