diff options
author | Salvatore Sanfilippo <antirez@gmail.com> | 2020-02-06 10:33:40 +0100 |
---|---|---|
committer | GitHub <noreply@github.com> | 2020-02-06 10:33:40 +0100 |
commit | 4aafdb185ae4840a233338988728caa8cf5624c9 (patch) | |
tree | ed62c69a9c0c7147d5c488b1d8e396083994c1be | |
parent | be520829b84a60338c3a672b9c14c67aab3076d9 (diff) | |
parent | 7e1d5954e59ab99c572f2dccccf6843c9aad9127 (diff) | |
download | redis-4aafdb185ae4840a233338988728caa8cf5624c9.tar.gz |
Merge pull request #6844 from oranagra/bind_config_leak
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 173a90909..9bb8f79ab 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; |