aboutsummaryrefslogtreecommitdiff
path: root/alias.c
diff options
context:
space:
mode:
authorJunio C Hamano <gitster@pobox.com>2024-05-29 09:32:24 -0700
committerJunio C Hamano <gitster@pobox.com>2024-05-29 09:32:24 -0700
commit5529cba09ff89b9762dbfd8f622e897948b60ab7 (patch)
tree3fad1f1ce36df7d8328a1a3c43a4dd41e37526a8 /alias.c
parent3a57aa566a21e7a510c64881bc6bdff7eb397988 (diff)
parentebdbefa4fe9f618347124b37d44e517e0c6a3e4c (diff)
downloadgit-5529cba09ff89b9762dbfd8f622e897948b60ab7.tar.xz
Merge branch 'ps/leakfixes' into ps/no-writable-strings
* ps/leakfixes: builtin/mv: fix leaks for submodule gitfile paths builtin/mv: refactor to use `struct strvec` builtin/mv duplicate string list memory builtin/mv: refactor `add_slash()` to always return allocated strings strvec: add functions to replace and remove strings submodule: fix leaking memory for submodule entries commit-reach: fix memory leak in `ahead_behind()` builtin/credential: clear credential before exit config: plug various memory leaks config: clarify memory ownership in `git_config_string()` builtin/log: stop using globals for format config builtin/log: stop using globals for log config convert: refactor code to clarify ownership of check_roundtrip_encoding diff: refactor code to clarify memory ownership of prefixes config: clarify memory ownership in `git_config_pathname()` http: refactor code to clarify memory ownership checkout: clarify memory ownership in `unique_tracking_name()` strbuf: fix leak when `appendwholeline()` fails with EOF transport-helper: fix leaking helper name
Diffstat (limited to 'alias.c')
-rw-r--r--alias.c6
1 files changed, 4 insertions, 2 deletions
diff --git a/alias.c b/alias.c
index 5a238f2e30..4daafd9bda 100644
--- a/alias.c
+++ b/alias.c
@@ -21,9 +21,11 @@ static int config_alias_cb(const char *key, const char *value,
return 0;
if (data->alias) {
- if (!strcasecmp(p, data->alias))
- return git_config_string((const char **)&data->v,
+ if (!strcasecmp(p, data->alias)) {
+ FREE_AND_NULL(data->v);
+ return git_config_string(&data->v,
key, value);
+ }
} else if (data->list) {
string_list_append(data->list, p);
}