mirror of https://gitee.com/openkylin/qemu.git
qemu-img: Allow creating zero sized images
A size of 0 should be valid and cannot be treated as "missing value". Use -1 for this purpose instead. Signed-off-by: Kevin Wolf <kwolf@redhat.com> Signed-off-by: Anthony Liguori <aliguori@us.ibm.com>
This commit is contained in:
parent
5819c91806
commit
9f56640c85
|
@ -297,13 +297,16 @@ static int img_create(int argc, char **argv)
|
|||
return 0;
|
||||
}
|
||||
|
||||
/* Create parameter list with default values */
|
||||
param = parse_option_parameters("", drv->create_options, param);
|
||||
set_option_parameter_int(param, BLOCK_OPT_SIZE, -1);
|
||||
|
||||
/* Parse -o options */
|
||||
if (options) {
|
||||
param = parse_option_parameters(options, drv->create_options, param);
|
||||
if (param == NULL) {
|
||||
error("Invalid options for file format '%s'.", fmt);
|
||||
}
|
||||
} else {
|
||||
param = parse_option_parameters("", drv->create_options, param);
|
||||
}
|
||||
|
||||
/* Get the filename */
|
||||
|
@ -321,7 +324,7 @@ static int img_create(int argc, char **argv)
|
|||
|
||||
// The size for the image must always be specified, with one exception:
|
||||
// If we are using a backing file, we can obtain the size from there
|
||||
if (get_option_parameter(param, BLOCK_OPT_SIZE)->value.n == 0) {
|
||||
if (get_option_parameter(param, BLOCK_OPT_SIZE)->value.n == -1) {
|
||||
|
||||
QEMUOptionParameter *backing_file =
|
||||
get_option_parameter(param, BLOCK_OPT_BACKING_FILE);
|
||||
|
|
Loading…
Reference in New Issue