diff --git a/i3-config-wizard/main.c b/i3-config-wizard/main.c index dd58fd124..cbea624e3 100644 --- a/i3-config-wizard/main.c +++ b/i3-config-wizard/main.c @@ -58,12 +58,10 @@ #error "SYSCONFDIR not defined" #endif -#define FREE(pointer) \ - do { \ - if (pointer != NULL) { \ - free(pointer); \ - pointer = NULL; \ - } \ +#define FREE(pointer) \ + do { \ + free(pointer); \ + pointer = NULL; \ } while (0) #include "xcb.h" diff --git a/i3-input/i3-input.h b/i3-input/i3-input.h index d347506fe..d7aae66b5 100644 --- a/i3-input/i3-input.h +++ b/i3-input/i3-input.h @@ -5,12 +5,10 @@ #include #define die(...) errx(EXIT_FAILURE, __VA_ARGS__); -#define FREE(pointer) \ - do { \ - if (pointer != NULL) { \ - free(pointer); \ - pointer = NULL; \ - } \ +#define FREE(pointer) \ + do { \ + free(pointer); \ + pointer = NULL; \ } while (0) extern xcb_window_t root; diff --git a/i3-nagbar/i3-nagbar.h b/i3-nagbar/i3-nagbar.h index c5e94cc61..cb672bead 100644 --- a/i3-nagbar/i3-nagbar.h +++ b/i3-nagbar/i3-nagbar.h @@ -5,12 +5,10 @@ #include #define die(...) errx(EXIT_FAILURE, __VA_ARGS__); -#define FREE(pointer) \ - do { \ - if (pointer != NULL) { \ - free(pointer); \ - pointer = NULL; \ - } \ +#define FREE(pointer) \ + do { \ + free(pointer); \ + pointer = NULL; \ } while (0) #define xmacro(atom) xcb_atom_t A_##atom; diff --git a/i3bar/include/util.h b/i3bar/include/util.h index 3af79ed77..1f5636110 100644 --- a/i3bar/include/util.h +++ b/i3bar/include/util.h @@ -20,12 +20,10 @@ #define STARTS_WITH(string, len, needle) (((len) >= strlen((needle))) && strncasecmp((string), (needle), strlen((needle))) == 0) /* Securely free p */ -#define FREE(p) \ - do { \ - if (p != NULL) { \ - free(p); \ - p = NULL; \ - } \ +#define FREE(p) \ + do { \ + free(p); \ + p = NULL; \ } while (0) /* Securely free single-linked list */ diff --git a/include/util.h b/include/util.h index 526ab8810..3547d8d7b 100644 --- a/include/util.h +++ b/include/util.h @@ -47,12 +47,10 @@ break; \ } -#define FREE(pointer) \ - do { \ - if (pointer != NULL) { \ - free(pointer); \ - pointer = NULL; \ - } \ +#define FREE(pointer) \ + do { \ + free(pointer); \ + pointer = NULL; \ } while (0) #define CALL(obj, member, ...) obj->member(obj, ##__VA_ARGS__)