diff options
author | Oran Agra <oran@redislabs.com> | 2020-02-06 09:15:31 +0200 |
---|---|---|
committer | Oran Agra <oran@redislabs.com> | 2020-02-06 09:17:39 +0200 |
commit | 7e1d5954e59ab99c572f2dccccf6843c9aad9127 (patch) | |
tree | 2eb9cc0bdf9394126426d603a8baebf559775a91 | |
parent | 44ac202fbfbca4210d016c9f77df987b27c1ae4c (diff) | |
download | redis-7e1d5954e59ab99c572f2dccccf6843c9aad9127.tar.gz |
Memory leak when bind config is provided twice
-rw-r--r-- | src/config.c | 4 |
1 files changed, 4 insertions, 0 deletions
diff --git a/src/config.c b/src/config.c index b19e78f74..fe26b3884 100644 --- a/src/config.c +++ b/src/config.c @@ -349,6 +349,10 @@ void loadServerConfigFromString(char *config) { if (addresses > CONFIG_BINDADDR_MAX) { err = "Too many bind addresses specified"; goto loaderr; } + /* Free old bind addresses */ + for (j = 0; j < server.bindaddr_count; j++) { + zfree(server.bindaddr[j]); + } for (j = 0; j < addresses; j++) server.bindaddr[j] = zstrdup(argv[j+1]); server.bindaddr_count = addresses; |