svn commit: r194349 - user/des/fmerge

Dag-Erling Smorgrav des at FreeBSD.org
Wed Jun 17 11:38:17 UTC 2009


Author: des
Date: Wed Jun 17 11:38:16 2009
New Revision: 194349
URL: http://svn.freebsd.org/changeset/base/194349

Log:
  Fix parsing of from / into.

Modified:
  user/des/fmerge/fmerge.pl

Modified: user/des/fmerge/fmerge.pl
==============================================================================
--- user/des/fmerge/fmerge.pl	Wed Jun 17 11:34:13 2009	(r194348)
+++ user/des/fmerge/fmerge.pl	Wed Jun 17 11:38:16 2009	(r194349)
@@ -145,15 +145,17 @@ sub usage() {
 MAIN:{
     while (@ARGV) {
 	if ($ARGV[0] eq 'already') {
+	    shift;
 	    $already++;
 	} elsif ($ARGV[0] eq 'debug') {
+	    shift;
 	    $debug++;
 	} elsif ($ARGV[0] eq 'pretend') {
+	    shift;
 	    $pretend++;
 	} else {
 	    last;
 	}
-	shift;
     }
     if (@ARGV < 1) {
 	usage();
@@ -177,37 +179,29 @@ MAIN:{
 	}
     }
 
-    if (@ARGV > 0) {
-	if (@ARGV < 2) {
-	    usage();
-	}
-	if ($ARGV[0] ne 'from') {
-	    usage();
-	}
-	shift;
-	$branch = $ARGV[0];
-	shift;
-    }
-
-    if (@ARGV > 0) {
-	if (@ARGV < 2) {
-	    usage();
-	}
-	if ($ARGV[0] ne 'into') {
-	    usage();
-	}
-	shift;
-	$target = $ARGV[0];
-	shift;
-	if (!-d $target) {
+    while (@ARGV) {
+	if ($ARGV[0] eq 'from') {
+	    shift;
+	    if (@ARGV < 1) {
+		usage();
+	    }
+	    $branch = $ARGV[0];
+	    shift;
+	} elsif ($ARGV[0] eq 'into') {
+	    shift;
+	    if (@ARGV < 1) {
+		usage();
+	    }
+	    $target = $ARGV[0];
+	    shift;
+	    if (!-d $target) {
+		usage();
+	    }
+	} else {
 	    usage();
 	}
     }
 
-    if (@ARGV > 0) {
-	usage();
-    }
-
     examine();
     fmerge();
 }


More information about the svn-src-user mailing list