From 7c5af7734ae96ca253dffaf208a2115ee1d2c0e3 Mon Sep 17 00:00:00 2001 From: Xavier Del Campo Romero Date: Fri, 20 Mar 2020 09:47:47 +0100 Subject: [PATCH] New convenience macro dynstr_append_or_ret_zero --- include/dynstr.h | 9 +++++++-- 1 file changed, 7 insertions(+), 2 deletions(-) diff --git a/include/dynstr.h b/include/dynstr.h index 1902eae..7f5b82e 100644 --- a/include/dynstr.h +++ b/include/dynstr.h @@ -39,9 +39,14 @@ #define dynstr_append_or_ret_false(d, format, ...) if (dynstr_append(d, format, ## __VA_ARGS__)) return false; /** - * Convenience macro that calls dynstr_append and returns one if failed. + * Convenience macro that calls dynstr_append and returns its error code if failed. */ -#define dynstr_append_or_ret_nonzero(d, format, ...) if (dynstr_append(d, format, ## __VA_ARGS__)) return 1; +#define dynstr_append_or_ret(d, format, ...) {const int err = dynstr_append(d, format, ## __VA_ARGS__); if (err) return err;} + +/** + * Convenience macro that calls dynstr_append and returns zero if failed. + */ +#define dynstr_append_or_ret_zero(d, format, ...) if (dynstr_append(d, format, ## __VA_ARGS__)) return 0; #endif /* __GNUC__ */