public inbox for lvm2-cvs@sourceware.org
help / color / mirror / Atom feed
* LVM2/tools args.h lvmcmdline.c tools.h
@ 2010-06-30 20:21 agk
  0 siblings, 0 replies; only message in thread
From: agk @ 2010-06-30 20:21 UTC (permalink / raw)
  To: lvm-devel, lvm2-cvs

CVSROOT:	/cvs/lvm2
Module name:	LVM2
Changes by:	agk@sourceware.org	2010-06-30 20:21:03

Modified files:
	tools          : args.h lvmcmdline.c tools.h 

Log message:
	Fix --[vg]metadatacopies arg processing

Patches:
http://sourceware.org/cgi-bin/cvsweb.cgi/LVM2/tools/args.h.diff?cvsroot=lvm2&r1=1.77&r2=1.78
http://sourceware.org/cgi-bin/cvsweb.cgi/LVM2/tools/lvmcmdline.c.diff?cvsroot=lvm2&r1=1.125&r2=1.126
http://sourceware.org/cgi-bin/cvsweb.cgi/LVM2/tools/tools.h.diff?cvsroot=lvm2&r1=1.69&r2=1.70

--- LVM2/tools/args.h	2010/06/28 20:40:01	1.77
+++ LVM2/tools/args.h	2010/06/30 20:21:03	1.78
@@ -23,8 +23,8 @@
 arg(ignorelockingfailure_ARG, '\0', "ignorelockingfailure", NULL, 0)
 arg(nolocking_ARG, '\0', "nolocking", NULL, 0)
 arg(pvmetadatacopies_ARG, '\0', "pvmetadatacopies", int_arg, 0)
-arg(vgmetadatacopies_ARG, '\0', "vgmetadatacopies", vgmetadatacopies_arg, 0)
-arg(metadatacopies_ARG, '\0', "metadatacopies", int_arg, 0)
+arg(vgmetadatacopies_ARG, '\0', "vgmetadatacopies", metadatacopies_arg, 0)
+arg(metadatacopies_ARG, '\0', "metadatacopies", metadatacopies_arg, 0)
 arg(metadatasize_ARG, '\0', "metadatasize", size_mb_arg, 0)
 arg(metadataignore_ARG, '\0', "metadataignore", yes_no_arg, 0)
 arg(restorefile_ARG, '\0', "restorefile", string_arg, 0)
--- LVM2/tools/lvmcmdline.c	2010/06/30 16:43:10	1.125
+++ LVM2/tools/lvmcmdline.c	2010/06/30 20:21:03	1.126
@@ -476,29 +476,22 @@
 /*
  * Non-zero, positive integer, "all", or "unmanaged"
  */
-int vgmetadatacopies_arg(struct cmd_context *cmd __attribute((unused)),
+int metadatacopies_arg(struct cmd_context *cmd __attribute((unused)),
 			 struct arg *a)
 {
-	if (!strcasecmp(a->value, "all")) {
-		a->ui_value = VGMETADATACOPIES_ALL;
-		return 1;
-	}
+	if (!strncmp(cmd->command->name, "vg", 2)) {
+		if (!strcasecmp(a->value, "all")) {
+			a->ui_value = VGMETADATACOPIES_ALL;
+			return 1;
+		}
 
-	if (!strcasecmp(a->value, "unmanaged")) {
-		a->ui_value = VGMETADATACOPIES_UNMANAGED;
-		return 1;
+		if (!strcasecmp(a->value, "unmanaged")) {
+			a->ui_value = VGMETADATACOPIES_UNMANAGED;
+			return 1;
+		}
 	}
 
-	if (!_size_arg(cmd, a, 1))
-		return 0;
-
-	if (a->sign == SIGN_MINUS)
-		return 0;
-
-	if (!a->ui_value)
-		return 0;
-
-	return 1;
+	return int_arg(cmd, a);
 }
 
 static void __alloc(int size)
--- LVM2/tools/tools.h	2010/06/28 20:40:01	1.69
+++ LVM2/tools/tools.h	2010/06/30 20:21:03	1.70
@@ -152,8 +152,7 @@
 int segtype_arg(struct cmd_context *cmd, struct arg *a);
 int alloc_arg(struct cmd_context *cmd, struct arg *a);
 int readahead_arg(struct cmd_context *cmd, struct arg *a);
-int vgmetadatacopies_arg(struct cmd_context *cmd __attribute((unused)),
-			 struct arg *a);
+int metadatacopies_arg(struct cmd_context *cmd __attribute((unused)), struct arg *a);
 
 /* we use the enums to access the switches */
 unsigned arg_count(const struct cmd_context *cmd, int a);


^ permalink raw reply	[flat|nested] only message in thread

only message in thread, other threads:[~2010-06-30 20:21 UTC | newest]

Thread overview: (only message) (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2010-06-30 20:21 LVM2/tools args.h lvmcmdline.c tools.h agk

This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for read-only IMAP folder(s) and NNTP newsgroup(s).