From: Prasad Joshi Date: Mon, 24 Mar 2014 18:38:54 +0000 (+0530) Subject: qemu-img: mandate argument to 'qemu-img check --repair' X-Git-Tag: qemu-xen-4.5.0-rc1~83^2~3 X-Git-Url: http://xenbits.xensource.com/gitweb?a=commitdiff_plain;h=4fd6a984b93701fcb40a0053098ae5c2c4ee27f4;p=qemu-upstream-4.5-testing.git qemu-img: mandate argument to 'qemu-img check --repair' qemu-img check --repair option accepts an argument. The argument to --repair switch can either be 'all' or 'leak'. Fix the long option to mandate argument with --repair switch. The patch fixes following segmentation fault Core was generated by `qemu-img check -f qcow2 --repair all t.qcow2'. Program terminated with signal 11, Segmentation fault. 0 in img_check (argc=6, argv=0x7fffab9b8a10) at qemu-img.c:588 588 if (!strcmp(optarg, "leaks")) { (gdb) bt 0 img_check (argc=6, argv=0x7fffab9b8a10) at qemu-img.c:588 1 __libc_start_main () from /lib/x86_64-linux-gnu/libc.so.6 2 _start () (gdb) Signed-off-by: Prasad Joshi Reviewed-by: Leandro Dorileo Reviewed-by: Kevin Wolf Signed-off-by: Stefan Hajnoczi --- diff --git a/qemu-img.c b/qemu-img.c index 2e40cc1e6..77d946b5c 100644 --- a/qemu-img.c +++ b/qemu-img.c @@ -565,7 +565,7 @@ static int img_check(int argc, char **argv) static const struct option long_options[] = { {"help", no_argument, 0, 'h'}, {"format", required_argument, 0, 'f'}, - {"repair", no_argument, 0, 'r'}, + {"repair", required_argument, 0, 'r'}, {"output", required_argument, 0, OPTION_OUTPUT}, {0, 0, 0, 0} };