BUG/MINOR: server: Init params before parsing a new server-state line

Same static arrays of parameters are used to parse all server-state
lines. Thus it is important to reinit them to be sure to not get params from
the previous line, eventually from the previous loaded file.

This patch should be backported to all stable branches. However, in 2.0 and
prior, the parsing of server-state lines are inlined in apply_server_state()
function. Thus the patch will have to be adapted on these versions.
This commit is contained in:
Christopher Faulet 2021-02-19 16:47:11 +01:00
parent 2d36df275b
commit 06cd256978

View File

@ -3110,6 +3110,8 @@ static void srv_state_parse_line(char *buf, const int version, char **params, ch
buf[buflen - 1] = '\0';
/* we're now ready to move the line into *srv_params[] */
memset(params, 0, SRV_STATE_FILE_MAX_FIELDS * sizeof(*params));
memset(srv_params, 0, SRV_STATE_FILE_MAX_FIELDS * sizeof(*srv_params));
params[0] = cur;
arg = 1;
srv_arg = 0;