From 31f30c99757057880c89f36b3e47eb1ec0af19d1 Mon Sep 17 00:00:00 2001
From: Anand Jain <anand.jain@oracle.com>
Date: Tue, 14 Jan 2014 19:17:07 +0800
Subject: [PATCH] btrfs-progs: return non zero when label is not found

btrfs filesystem show <not-found-label> should return non zero

Signed-off-by: Anand Jain <anand.jain@oracle.com>
Signed-off-by: David Sterba <dsterba@suse.cz>
Signed-off-by: Chris Mason <clm@fb.com>
---
 cmds-filesystem.c | 12 +++++++++---
 1 file changed, 9 insertions(+), 3 deletions(-)

diff --git a/cmds-filesystem.c b/cmds-filesystem.c
index 7e11507c..43e1cf3c 100644
--- a/cmds-filesystem.c
+++ b/cmds-filesystem.c
@@ -539,6 +539,7 @@ static int cmd_show(int argc, char **argv)
 	char path[PATH_MAX];
 	__u8 fsid[BTRFS_FSID_SIZE];
 	char uuid_buf[37];
+	int found = 0;
 
 	while (1) {
 		int long_index;
@@ -613,8 +614,10 @@ static int cmd_show(int argc, char **argv)
 
 	/* show mounted btrfs */
 	ret = btrfs_scan_kernel(search);
-	if (search && !ret)
-		return 0;
+	if (search && !ret) {
+		/* since search is found we are done */
+		goto out;
+	}
 
 	/* shows mounted only */
 	if (where == BTRFS_SCAN_MOUNTED)
@@ -636,12 +639,15 @@ devs_only:
 			continue;
 
 		print_one_uuid(fs_devices);
+		found = 1;
 	}
+	if (search && !found)
+		ret = 1;
 
 out:
 	printf("%s\n", BTRFS_BUILD_VERSION);
 	free_seen_fsid();
-	return 0;
+	return ret;
 }
 
 static const char * const cmd_sync_usage[] = {