From 5de3de329ac2fafa4b5762a6d0384312897793e5 Mon Sep 17 00:00:00 2001 From: Jonathan Tan Date: Tue, 19 Sep 2017 15:10:04 -0700 Subject: [PATCH] git-compat-util: make UNLEAK less error-prone Commit 0e5bba5 ("add UNLEAK annotation for reducing leak false positives", 2017-09-08) introduced an UNLEAK macro to be used as "UNLEAK(var);", but its existing definitions leave semicolons that act as empty statements, which will lead to syntax errors, e.g. if (condition) UNLEAK(var); else something_else(var); would be broken with two statements between if (condition) and else. Lose the excess semicolon from the end of the macro replacement text. Signed-off-by: Jonathan Tan Signed-off-by: Junio C Hamano --- git-compat-util.h | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/git-compat-util.h b/git-compat-util.h index 003e444c46..9bc15b0363 100644 --- a/git-compat-util.h +++ b/git-compat-util.h @@ -1184,9 +1184,9 @@ extern int cmd_main(int, const char **); */ #ifdef SUPPRESS_ANNOTATED_LEAKS extern void unleak_memory(const void *ptr, size_t len); -#define UNLEAK(var) unleak_memory(&(var), sizeof(var)); +#define UNLEAK(var) unleak_memory(&(var), sizeof(var)) #else -#define UNLEAK(var) +#define UNLEAK(var) do {} while (0) #endif #endif -- 2.32.0.93.g670b81a890