git-svn-id: svn+ssh://projects.linpro.no/svn/varnish/trunk@1957
d4fa192b-c00b-0410-8231-
f00ffab90ce4
CHECK_OBJ((to), (type_magic)); \
} while (0);
-#define CAST_OBJ_NOTNULL(to, from, type_magic) \
+#define CAST_OBJ_NOTNULL(to, from, type_magic) \
do { \
(to) = (from); \
assert((to) != NULL); \
CHECK_OBJ((to), (type_magic)); \
} while (0);
+#define REPLACE(ptr, val) \
+ do { \
+ if ((ptr) != NULL) \
+ free(ptr); \
+ if ((val) != NULL) { \
+ ptr = strdup(val); \
+ AN((ptr)); \
+ } else { \
+ ptr = NULL; \
+ } \
+ } while (0);