Make sure remember_dc has its own copy of the model string

When called from the parser the model string is freed right after passing
it to remember_dc. So we need to get our own copy.

Signed-off-by: Dirk Hohndel <dirk@hohndel.org>
This commit is contained in:
Dirk Hohndel 2013-01-01 17:27:33 -08:00
parent 8fa81a5577
commit 030d0c1294

View file

@ -2289,7 +2289,7 @@ void remember_dc(const char *model, uint32_t deviceid, const char *nickname, gbo
char buffer[160];
struct dcnicknamelist *nn_entry = malloc(sizeof(struct dcnicknamelist));
nn_entry->deviceid = deviceid;
nn_entry->model = model;
nn_entry->model = strdup(model);
/* make sure there are no curly braces or commas in the string and that
* it will fit in the buffer */
nn_entry->nickname = cleanedup_nickname(nickname, sizeof(buffer) - 13 - strlen(model));