aboutsummaryrefslogtreecommitdiff
path: root/hw
diff options
context:
space:
mode:
authorLi Qiang <liq3ea@gmail.com>2016-11-23 13:53:34 +0100
committerGreg Kurz <groug@kaod.org>2016-11-23 13:53:34 +0100
commit4774718e5c194026ba5ee7a28d9be49be3080e42 (patch)
treeca05cf27b6756f41bcfbce27791a8d247223eebf /hw
parent00227fefd2059464cd2f59aed29944874c630e2f (diff)
downloadqemu-4774718e5c194026ba5ee7a28d9be49be3080e42.zip
qemu-4774718e5c194026ba5ee7a28d9be49be3080e42.tar.gz
qemu-4774718e5c194026ba5ee7a28d9be49be3080e42.tar.bz2
9pfs: adjust the order of resource cleanup in device unrealize
Unrealize should undo things that were set during realize in reverse order. So should do in the error path in realize. Signed-off-by: Li Qiang <liq3ea@gmail.com> Reviewed-by: Greg Kurz <groug@kaod.org> Signed-off-by: Greg Kurz <groug@kaod.org>
Diffstat (limited to 'hw')
-rw-r--r--hw/9pfs/9p.c4
1 files changed, 2 insertions, 2 deletions
diff --git a/hw/9pfs/9p.c b/hw/9pfs/9p.c
index aea7e9d..087b5c9 100644
--- a/hw/9pfs/9p.c
+++ b/hw/9pfs/9p.c
@@ -3521,8 +3521,8 @@ int v9fs_device_realize_common(V9fsState *s, Error **errp)
rc = 0;
out:
if (rc) {
- g_free(s->ctx.fs_root);
g_free(s->tag);
+ g_free(s->ctx.fs_root);
v9fs_path_free(&path);
}
return rc;
@@ -3530,8 +3530,8 @@ out:
void v9fs_device_unrealize_common(V9fsState *s, Error **errp)
{
- g_free(s->ctx.fs_root);
g_free(s->tag);
+ g_free(s->ctx.fs_root);
}
typedef struct VirtfsCoResetData {