diff --git a/server/core/dbusers.c b/server/core/dbusers.c index 5f6943a3b..8a114cb39 100644 --- a/server/core/dbusers.c +++ b/server/core/dbusers.c @@ -897,6 +897,10 @@ static void *uh_keydup(void* key) { MYSQL_USER_HOST *current_key = (MYSQL_USER_HOST *)key; if (key == NULL || rval == NULL || current_key == NULL || current_key->user == NULL) { + if (rval) { + free(rval); + } + return NULL; } diff --git a/server/core/gw_utils.c b/server/core/gw_utils.c index d5ee3e429..f76fb583b 100644 --- a/server/core/gw_utils.c +++ b/server/core/gw_utils.c @@ -175,7 +175,7 @@ void gw_daemonize(void) { int parse_bindconfig(char *config, unsigned short def_port, struct sockaddr_in *addr) { -char *port, buf[1024]; +char *port, buf[1024 + 1]; short pnum; struct hostent *hp;