aboutsummaryrefslogtreecommitdiff
path: root/src
diff options
context:
space:
mode:
Diffstat (limited to 'src')
-rw-r--r--src/utils.c8
1 files changed, 4 insertions, 4 deletions
diff --git a/src/utils.c b/src/utils.c
index da340db..d45f33a 100644
--- a/src/utils.c
+++ b/src/utils.c
@@ -601,7 +601,7 @@ int fix_tox_conf(const char *filename, char **result) {
}
if (!*result) {
- *result = calloc(PATH_MAX, sizeof(*result));
+ *result = calloc(PATH_MAX, sizeof(**result));
if (!*result) {
return -1;
}
@@ -610,10 +610,10 @@ int fix_tox_conf(const char *filename, char **result) {
toxini = ini_open(filename);
if (!toxini) {
if (fptemp) {
+ guard_free(result);
guard_free(tempfile);
fclose(fptemp);
}
- guard_free(*result);
return -1;
}
@@ -630,7 +630,7 @@ int fix_tox_conf(const char *filename, char **result) {
tmp = realloc(data->value, strlen(data->value) + strlen(with_posargs) + 1);
if (!tmp) {
SYSERROR("failed to increase data->value size to +%zu bytes", strlen(data->value) + strlen(with_posargs) + 1);
- guard_free(result);
+ guard_free(*result);
return -1;
} else if (tmp != data->value) {
data->value = tmp;
@@ -646,7 +646,7 @@ int fix_tox_conf(const char *filename, char **result) {
ini_write(toxini, &fptemp);
fclose(fptemp);
- *result = tempfile;
+ strcpy(*result, tempfile);
guard_free(tempfile);
ini_free(&toxini);