btrfs-progs: subvolume sync: fix handling of -s option
authorMarek Rusinowski <marekrusinowski@gmail.com>
Wed, 4 May 2016 13:36:35 +0000 (15:36 +0200)
committerDavid Sterba <dsterba@suse.com>
Wed, 11 May 2016 14:37:12 +0000 (16:37 +0200)
Setting check interval for subvolume sync resulted
in picking wrong element from argv for it's value:

  $ btrfs subvolume sync -s 10 ./dir
  ERROR: invalid sleep interval ./dir
  $ btrfs subvolume sync ./dir -s 10
  Segmentation fault

Signed-off-by: Marek Rusinowski <marekrusinowski@gmail.com>
Signed-off-by: David Sterba <dsterba@suse.com>
cmds-subvolume.c

index 7c8ab8f..e3d2cbc 100644 (file)
@@ -1195,10 +1195,9 @@ static int cmd_subvol_sync(int argc, char **argv)
 
                switch (c) {
                case 's':
-                       sleep_interval = atoi(argv[optind]);
+                       sleep_interval = atoi(optarg);
                        if (sleep_interval < 1) {
-                               error("invalid sleep interval %s",
-                                       argv[optind]);
+                               error("invalid sleep interval %s", optarg);
                                ret = 1;
                                goto out;
                        }