This is my patch patch.0a for perl5.000.
[p5sagit/p5-mst-13.2.git] / lib / getopts.pl
index 4ed3a05..a0818d1 100644 (file)
@@ -6,17 +6,19 @@
 
 sub Getopts {
     local($argumentative) = @_;
-    local(@args,$_,$first,$rest,$errs);
+    local(@args,$_,$first,$rest);
+    local($errs) = 0;
     local($[) = 0;
 
     @args = split( / */, $argumentative );
-    while(($_ = $ARGV[0]) =~ /^-(.)(.*)/) {
+    while(@ARGV && ($_ = $ARGV[0]) =~ /^-(.)(.*)/) {
        ($first,$rest) = ($1,$2);
        $pos = index($argumentative,$first);
        if($pos >= $[) {
            if($args[$pos+1] eq ':') {
                shift(@ARGV);
                if($rest eq '') {
+                   ++$errs unless @ARGV;
                    $rest = shift(@ARGV);
                }
                eval "\$opt_$first = \$rest;";