Permalink
Browse files

do not check for NULL in FREE macro

free(3) is safe to invoke on a NULL pointer, in which case no action is
taken. This change adjusts the FREE macros to omit this unnecessary
check.
  • Loading branch information...
d-e-s-o committed Nov 23, 2017
1 parent 362cbe6 commit 865bd462b4d71c6e0d5edcae148a5b6a6c208ffb
Showing with 20 additions and 30 deletions.
  1. +4 −6 i3-config-wizard/main.c
  2. +4 −6 i3-input/i3-input.h
  3. +4 −6 i3-nagbar/i3-nagbar.h
  4. +4 −6 i3bar/include/util.h
  5. +4 −6 include/util.h
View
@@ -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"
View
@@ -5,12 +5,10 @@
#include <err.h>
#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;
View
@@ -5,12 +5,10 @@
#include <err.h>
#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;
View
@@ -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 */
View
@@ -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__)

0 comments on commit 865bd46

Please sign in to comment.