commands: Fix memory allocation in assign

Also use the safer snprintf since we just computed the size.

Signed-off-by: Quentin Glidic <sardemff7+git@sardemff7.net>
This commit is contained in:
Quentin Glidic 2016-01-23 20:20:24 +01:00
parent 43483d8fee
commit 449617f104

View File

@ -177,10 +177,10 @@ static struct cmd_results *cmd_assign(int argc, char **argv) {
}
char *movecmd = "move container to workspace ";
int arglen = strlen(*argv);
char *cmdlist = calloc(1, sizeof(movecmd) + arglen);
int arglen = strlen(movecmd) + strlen(*argv) + 1;
char *cmdlist = calloc(1, arglen);
sprintf(cmdlist, "%s%s", movecmd, *argv);
snprintf(cmdlist, arglen, "%s%s", movecmd, *argv);
struct criteria *crit = malloc(sizeof(struct criteria));
crit->crit_raw = strdup(criteria);