Skip to content

Commit

Permalink
Merge pull request #3058 from d-e-s-o/fix-FREE
Browse files Browse the repository at this point in the history
do not check for NULL in FREE macro
  • Loading branch information
Airblader committed Nov 29, 2017
2 parents 3e34122 + 865bd46 commit f6f198c
Show file tree
Hide file tree
Showing 5 changed files with 20 additions and 30 deletions.
10 changes: 4 additions & 6 deletions i3-config-wizard/main.c
Expand Up @@ -58,12 +58,10 @@
#error "SYSCONFDIR not defined" #error "SYSCONFDIR not defined"
#endif #endif


#define FREE(pointer) \ #define FREE(pointer) \
do { \ do { \
if (pointer != NULL) { \ free(pointer); \
free(pointer); \ pointer = NULL; \
pointer = NULL; \
} \
} while (0) } while (0)


#include "xcb.h" #include "xcb.h"
Expand Down
10 changes: 4 additions & 6 deletions i3-input/i3-input.h
Expand Up @@ -5,12 +5,10 @@
#include <err.h> #include <err.h>


#define die(...) errx(EXIT_FAILURE, __VA_ARGS__); #define die(...) errx(EXIT_FAILURE, __VA_ARGS__);
#define FREE(pointer) \ #define FREE(pointer) \
do { \ do { \
if (pointer != NULL) { \ free(pointer); \
free(pointer); \ pointer = NULL; \
pointer = NULL; \
} \
} while (0) } while (0)


extern xcb_window_t root; extern xcb_window_t root;
10 changes: 4 additions & 6 deletions i3-nagbar/i3-nagbar.h
Expand Up @@ -5,12 +5,10 @@
#include <err.h> #include <err.h>


#define die(...) errx(EXIT_FAILURE, __VA_ARGS__); #define die(...) errx(EXIT_FAILURE, __VA_ARGS__);
#define FREE(pointer) \ #define FREE(pointer) \
do { \ do { \
if (pointer != NULL) { \ free(pointer); \
free(pointer); \ pointer = NULL; \
pointer = NULL; \
} \
} while (0) } while (0)


#define xmacro(atom) xcb_atom_t A_##atom; #define xmacro(atom) xcb_atom_t A_##atom;
Expand Down
10 changes: 4 additions & 6 deletions i3bar/include/util.h
Expand Up @@ -20,12 +20,10 @@
#define STARTS_WITH(string, len, needle) (((len) >= strlen((needle))) && strncasecmp((string), (needle), strlen((needle))) == 0) #define STARTS_WITH(string, len, needle) (((len) >= strlen((needle))) && strncasecmp((string), (needle), strlen((needle))) == 0)


/* Securely free p */ /* Securely free p */
#define FREE(p) \ #define FREE(p) \
do { \ do { \
if (p != NULL) { \ free(p); \
free(p); \ p = NULL; \
p = NULL; \
} \
} while (0) } while (0)


/* Securely free single-linked list */ /* Securely free single-linked list */
Expand Down
10 changes: 4 additions & 6 deletions include/util.h
Expand Up @@ -47,12 +47,10 @@
break; \ break; \
} }


#define FREE(pointer) \ #define FREE(pointer) \
do { \ do { \
if (pointer != NULL) { \ free(pointer); \
free(pointer); \ pointer = NULL; \
pointer = NULL; \
} \
} while (0) } while (0)


#define CALL(obj, member, ...) obj->member(obj, ##__VA_ARGS__) #define CALL(obj, member, ...) obj->member(obj, ##__VA_ARGS__)
Expand Down

0 comments on commit f6f198c

Please sign in to comment.