[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index] [Xen-changelog] [xen-unstable] libxl: strdup disk path before put it in qemu args array.
# HG changeset patch # User Anthony PERARD <anthony.perard@xxxxxxxxxx> # Date 1292263142 0 # Node ID cb75d32db0d68563844712abe04ea032ad197637 # Parent 46f5b6654436702dd70af130cc09210c21bf890b libxl: strdup disk path before put it in qemu args array. In libxl_build_device_model_args_new, the path to the disk image are freeed before there was actually use to make the arguments list of Qemu. The patch strdups it. This patch also changes argv[0] of the device model. Now, it is the conventional argv[0], so is value come from info->device_model. Signed-off-by: Anthony PERARD <anthony.perard@xxxxxxxxxx> Signed-off-by: Stefano Stabellini <stefano.stabellini@xxxxxxxxxxxxx> committer: Stefano Stabellini <stefano.stabellini@xxxxxxxxxxxxx> --- tools/libxl/libxl.c | 10 +++++----- 1 files changed, 5 insertions(+), 5 deletions(-) diff -r 46f5b6654436 -r cb75d32db0d6 tools/libxl/libxl.c --- a/tools/libxl/libxl.c Mon Dec 13 17:58:20 2010 +0000 +++ b/tools/libxl/libxl.c Mon Dec 13 17:59:02 2010 +0000 @@ -1256,9 +1256,9 @@ static char ** libxl_build_device_model_ if (!dm_args) return NULL; - flexarray_set(dm_args, num++, "qemu-system-xen"); + flexarray_set(dm_args, num++, libxl__strdup(gc, info->device_model)); + flexarray_set(dm_args, num++, "-xen-domid"); - flexarray_set(dm_args, num++, libxl__sprintf(gc, "%d", info->domid)); if (info->dom_name) { @@ -1378,10 +1378,10 @@ static char ** libxl_build_device_model_ for (i; i < nb; i++) { if ( disks[i].is_cdrom ) { flexarray_set(dm_args, num++, "-cdrom"); - flexarray_set(dm_args, num++, disks[i].physpath); - }else{ + flexarray_set(dm_args, num++, libxl__strdup(gc, disks[i].physpath)); + } else { flexarray_set(dm_args, num++, libxl__sprintf(gc, "-%s", disks[i].virtpath)); - flexarray_set(dm_args, num++, disks[i].physpath); + flexarray_set(dm_args, num++, libxl__strdup(gc, disks[i].physpath)); } libxl_device_disk_destroy(&disks[i]); } _______________________________________________ Xen-changelog mailing list Xen-changelog@xxxxxxxxxxxxxxxxxxx http://lists.xensource.com/xen-changelog
|
Lists.xenproject.org is hosted with RackSpace, monitoring our |