summaryrefslogtreecommitdiff
path: root/src
diff options
context:
space:
mode:
Diffstat (limited to 'src')
-rw-r--r--src/or/config.c3
-rw-r--r--src/or/control.c2
-rw-r--r--src/or/control.h2
3 files changed, 4 insertions, 3 deletions
diff --git a/src/or/config.c b/src/or/config.c
index 20a3c20fb9..e86942cfe1 100644
--- a/src/or/config.c
+++ b/src/or/config.c
@@ -620,12 +620,13 @@ set_options(or_options_t *new_val, char **msg)
tor_free(line);
}
} else {
- smartlist_add(elements, (char*)options_format.vars[i].name);
+ smartlist_add(elements, tor_strdup(options_format.vars[i].name));
smartlist_add(elements, NULL);
}
}
}
control_event_conf_changed(elements);
+ SMARTLIST_FOREACH(elements, char *, cp, tor_free(cp));
smartlist_free(elements);
}
diff --git a/src/or/control.c b/src/or/control.c
index 390b8d1502..48782682c7 100644
--- a/src/or/control.c
+++ b/src/or/control.c
@@ -4393,7 +4393,7 @@ control_event_guard(const char *nickname, const char *digest,
* a smartlist_t containing (key, value, ...) pairs in sequence.
* <b>value</b> can be NULL. */
int
-control_event_conf_changed(smartlist_t *elements)
+control_event_conf_changed(const smartlist_t *elements)
{
int i;
char *result;
diff --git a/src/or/control.h b/src/or/control.h
index 0ea7941b13..61062da2c4 100644
--- a/src/or/control.h
+++ b/src/or/control.h
@@ -72,7 +72,7 @@ int control_event_server_status(int severity, const char *format, ...)
CHECK_PRINTF(2,3);
int control_event_guard(const char *nickname, const char *digest,
const char *status);
-int control_event_conf_changed(smartlist_t *elements);
+int control_event_conf_changed(const smartlist_t *elements);
int control_event_buildtimeout_set(const circuit_build_times_t *cbt,
buildtimeout_set_event_t type);
int control_event_signal(uintptr_t signal);