mirror of https://github.com/xemu-project/xemu.git
hw/s390x: fix memory leak in s390_init_ipl_dev()
The string returned by object_property_get_str() is dynamically allocated.
Fixes: 3c4e9baacf
Signed-off-by: Greg Kurz <groug@kaod.org>
Message-Id: <152231460685.69730.14860451936216690693.stgit@bahia.lan>
Reviewed-by: Cornelia Huck <cohuck@redhat.com>
Reviewed-by: Thomas Huth <thuth@redhat.com>
Signed-off-by: Cornelia Huck <cohuck@redhat.com>
This commit is contained in:
parent
f184de7553
commit
d9b06db813
|
@ -246,6 +246,7 @@ static void s390_init_ipl_dev(const char *kernel_filename,
|
||||||
{
|
{
|
||||||
Object *new = object_new(TYPE_S390_IPL);
|
Object *new = object_new(TYPE_S390_IPL);
|
||||||
DeviceState *dev = DEVICE(new);
|
DeviceState *dev = DEVICE(new);
|
||||||
|
char *netboot_fw_prop;
|
||||||
|
|
||||||
if (kernel_filename) {
|
if (kernel_filename) {
|
||||||
qdev_prop_set_string(dev, "kernel", kernel_filename);
|
qdev_prop_set_string(dev, "kernel", kernel_filename);
|
||||||
|
@ -256,9 +257,11 @@ static void s390_init_ipl_dev(const char *kernel_filename,
|
||||||
qdev_prop_set_string(dev, "cmdline", kernel_cmdline);
|
qdev_prop_set_string(dev, "cmdline", kernel_cmdline);
|
||||||
qdev_prop_set_string(dev, "firmware", firmware);
|
qdev_prop_set_string(dev, "firmware", firmware);
|
||||||
qdev_prop_set_bit(dev, "enforce_bios", enforce_bios);
|
qdev_prop_set_bit(dev, "enforce_bios", enforce_bios);
|
||||||
if (!strlen(object_property_get_str(new, "netboot_fw", &error_abort))) {
|
netboot_fw_prop = object_property_get_str(new, "netboot_fw", &error_abort);
|
||||||
|
if (!strlen(netboot_fw_prop)) {
|
||||||
qdev_prop_set_string(dev, "netboot_fw", netboot_fw);
|
qdev_prop_set_string(dev, "netboot_fw", netboot_fw);
|
||||||
}
|
}
|
||||||
|
g_free(netboot_fw_prop);
|
||||||
object_property_add_child(qdev_get_machine(), TYPE_S390_IPL,
|
object_property_add_child(qdev_get_machine(), TYPE_S390_IPL,
|
||||||
new, NULL);
|
new, NULL);
|
||||||
object_unref(new);
|
object_unref(new);
|
||||||
|
|
Loading…
Reference in New Issue