readline: Fix unchecked strdup() by converting to g_strdup()
Signed-off-by: Markus Armbruster <armbru@redhat.com> Reviewed-by: Eric Blake <eblake@redhat.com> Signed-off-by: Stefan Hajnoczi <stefanha@redhat.com>
This commit is contained in:
parent
d3f8e138c2
commit
c3baa5f9e4
@ -247,14 +247,14 @@ static void readline_hist_add(ReadLineState *rs, const char *cmdline)
|
|||||||
}
|
}
|
||||||
if (idx == READLINE_MAX_CMDS) {
|
if (idx == READLINE_MAX_CMDS) {
|
||||||
/* Need to get one free slot */
|
/* Need to get one free slot */
|
||||||
free(rs->history[0]);
|
g_free(rs->history[0]);
|
||||||
memmove(rs->history, &rs->history[1],
|
memmove(rs->history, &rs->history[1],
|
||||||
(READLINE_MAX_CMDS - 1) * sizeof(char *));
|
(READLINE_MAX_CMDS - 1) * sizeof(char *));
|
||||||
rs->history[READLINE_MAX_CMDS - 1] = NULL;
|
rs->history[READLINE_MAX_CMDS - 1] = NULL;
|
||||||
idx = READLINE_MAX_CMDS - 1;
|
idx = READLINE_MAX_CMDS - 1;
|
||||||
}
|
}
|
||||||
if (new_entry == NULL)
|
if (new_entry == NULL)
|
||||||
new_entry = strdup(cmdline);
|
new_entry = g_strdup(cmdline);
|
||||||
rs->history[idx] = new_entry;
|
rs->history[idx] = new_entry;
|
||||||
rs->hist_entry = -1;
|
rs->hist_entry = -1;
|
||||||
}
|
}
|
||||||
|
Loading…
Reference in New Issue
Block a user