Am 16.12.2010 12:04, schrieb jes.soren...@redhat.com:
> From: Jes Sorensen <jes.soren...@redhat.com>
> 
> Signed-off-by: Jes Sorensen <jes.soren...@redhat.com>
> ---
>  block.c |    7 +++++++
>  1 files changed, 7 insertions(+), 0 deletions(-)
> 
> diff --git a/block.c b/block.c
> index 765f9f3..027dc6a 100644
> --- a/block.c
> +++ b/block.c
> @@ -2769,6 +2769,13 @@ int bdrv_img_create(const char *filename, const char 
> *fmt,
>      BlockDriver *drv, *proto_drv;
>      int ret = 0;
>  
> +    if (!strcmp(filename, base_filename)) {
> +        error_report("Error: Trying to create a snapshot with the same "
> +                     "filename as the backing file");
> +        ret = -1;
> +        goto out;
> +    }
> +
>      /* Find driver and parse its options */
>      drv = bdrv_find_format(fmt);
>      if (!drv) {

This doesn't catch things like qemu-img create -f qcow2
-obacking_file=foo.qcow2 foo.qcow2 though it will work if you use the
legacy -b option. I think we should keep it consistent.

Kevin

Reply via email to