aboutsummaryrefslogtreecommitdiff
path: root/src/deliverable.c
diff options
context:
space:
mode:
Diffstat (limited to 'src/deliverable.c')
-rw-r--r--src/deliverable.c6
1 files changed, 6 insertions, 0 deletions
diff --git a/src/deliverable.c b/src/deliverable.c
index b7dd973..510baa3 100644
--- a/src/deliverable.c
+++ b/src/deliverable.c
@@ -21,6 +21,9 @@ static void conv_int(int *x, union INIVal val) {
}
static void conv_str(char **x, union INIVal val) {
+ if (*x) {
+ guard_free(*x);
+ }
if (val.as_char_p) {
char *tplop = tpl_render(val.as_char_p);
if (tplop) {
@@ -34,6 +37,9 @@ static void conv_str(char **x, union INIVal val) {
}
static void conv_str_noexpand(char **x, union INIVal val) {
+ if (*x) {
+ guard_free(*x);
+ }
*x = strdup(val.as_char_p);
}