commit c1bdb80aba64ac378784840d231b0db098c05474 Author: Nick Mathewson nickm@torproject.org Date: Fri Nov 17 11:45:47 2017 -0500
Add a macro to call a free_ function and clear a variable --- src/common/util.h | 8 ++++++++ 1 file changed, 8 insertions(+)
diff --git a/src/common/util.h b/src/common/util.h index 6bc853da2..e11265a5d 100644 --- a/src/common/util.h +++ b/src/common/util.h @@ -109,6 +109,14 @@ extern int dmalloc_free(const char *file, const int line, void *pnt,
void tor_log_mallinfo(int severity);
+/* Helper macro: free a variable of type 'type' using type_free_, and + * set the variable to NULL. */ +#define FREE_AND_NULL(type, var) \ + do { \ + type ## _free_(var); \ + (var) = NULL; \ + } while (0) + /** Macro: yield a pointer to the field at position <b>off</b> within the * structure <b>st</b>. Example: * <pre>