diff options
-rw-r--r-- | sparsify/sparsify.ml | 16 |
1 files changed, 9 insertions, 7 deletions
diff --git a/sparsify/sparsify.ml b/sparsify/sparsify.ml index 76b118cb..544c8abc 100644 --- a/sparsify/sparsify.ml +++ b/sparsify/sparsify.ml @@ -162,14 +162,16 @@ let overlaydisk = (* Create it with the indisk as the backing file. *) let cmd = - let backing_file_option = - sprintf "backing_file=%s%s" - (replace_str indisk "," ",,") - (match format with - | None -> "" - | Some fmt -> sprintf ",backing_fmt=%s" fmt) in + let options = + let backing_file_option = + [sprintf "backing_file=%s" (replace_str indisk "," ",,")] in + let backing_fmt_option = + match format with + | None -> [] + | Some fmt -> [sprintf "backing_fmt=%s" fmt] in + backing_file_option @ backing_fmt_option in sprintf "qemu-img create -f qcow2 -o %s %s > /dev/null" - (Filename.quote backing_file_option) (Filename.quote tmp) in + (Filename.quote (String.concat "," options)) (Filename.quote tmp) in if verbose then printf "%s\n%!" cmd; if Sys.command cmd <> 0 then |