diff options
author | Markus Armbruster <armbru@redhat.com> | 2011-11-08 15:36:49 +0100 |
---|---|---|
committer | Stefan Hajnoczi <stefanha@linux.vnet.ibm.com> | 2011-11-10 12:29:50 +0000 |
commit | 99e1dec06f343cefecae9baeec0aae2f99f552d5 (patch) | |
tree | 1f6a53be3b7b9dc1d00e9ecc7aaa833dd5ef836b | |
parent | d3c481b357ee6f78d3df10ee30407fa05d85b76c (diff) | |
download | hqemu-99e1dec06f343cefecae9baeec0aae2f99f552d5.zip hqemu-99e1dec06f343cefecae9baeec0aae2f99f552d5.tar.gz |
x86/cpuid: Plug memory leak in cpudef_setfield()
To reproduce the leak, put two name options into the same [cpudef]
section of target-x86_64.conf.
Signed-off-by: Markus Armbruster <armbru@redhat.com>
Signed-off-by: Stefan Hajnoczi <stefanha@linux.vnet.ibm.com>
-rw-r--r-- | target-i386/cpuid.c | 1 |
1 files changed, 1 insertions, 0 deletions
diff --git a/target-i386/cpuid.c b/target-i386/cpuid.c index 352c390..99cff65 100644 --- a/target-i386/cpuid.c +++ b/target-i386/cpuid.c @@ -950,6 +950,7 @@ static int cpudef_setfield(const char *name, const char *str, void *opaque) int err = 0; if (!strcmp(name, "name")) { + g_free((void *)def->name); def->name = g_strdup(str); } else if (!strcmp(name, "model_id")) { strncpy(def->model_id, str, sizeof (def->model_id)); |