btrfs-progs/mkfs
Qu Wenruo f61b90aff9 btrfs-progs: make usage call properly return an exit value
[BUG]
Currently cli/009 test case failed with different exit number:

  ====== RUN CHECK /home/adam/btrfs-progs/btrfstune --help
  usage: btrfstune [options] device
  [...]
  failed: /home/adam/btrfs-progs/btrfstune --help
  test failed for case 009-btrfstune

[CAUSE]
In tune/main.c, we have the following call on usage():

  static void print_usage(int ret)
  {
	usage(&tune_cmd);
	exit(ret);
  }

However usage() itself would always call exit(1):

  void usage(const struct cmd_struct *cmd)
  {
	usage_command_usagestr(cmd->usagestr, NULL, 0, true, true);
	exit(1);
  }

This makes prevents any caller of usage() to modify its exit number.

[FIX]
Add a new argument @error for print_usage(), so we can properly return 0
for -h/--help usage.

Signed-off-by: Qu Wenruo <wqu@suse.com>
Signed-off-by: David Sterba <dsterba@suse.com>
2023-02-28 20:11:23 +01:00
..
Makefile btrfs-progs: build: add stub makefile to image and mkfs 2019-07-04 15:36:01 +02:00
common.c btrfs-progs: mkfs: fix a crash when enabling extent-tree-v2 2022-10-11 09:08:12 +02:00
common.h btrfs-progs: fsfeatures: properly merge -O and -R options 2022-10-11 09:08:11 +02:00
main.c btrfs-progs: make usage call properly return an exit value 2023-02-28 20:11:23 +01:00
rootdir.c btrfs-progs: mkfs: offset inode numbers of the source filesystem 2022-10-11 09:08:10 +02:00
rootdir.h btrfs-progs: mkfs: update include lists 2022-10-11 09:06:12 +02:00