summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--pear/Console/Getopt.php6
1 files changed, 3 insertions, 3 deletions
diff --git a/pear/Console/Getopt.php b/pear/Console/Getopt.php
index 41ea43d27f..b20bc6754a 100644
--- a/pear/Console/Getopt.php
+++ b/pear/Console/Getopt.php
@@ -75,7 +75,7 @@ class Console_Getopt {
sort($long_options);
reset($args);
- while (list(, $arg) = each($args)) {
+ while (list($i, $arg) = each($args)) {
/* The special element '--' means explicit end of options. Treat the
rest of the arguments as non-options and end the loop. */
@@ -84,9 +84,9 @@ class Console_Getopt {
break;
}
- if ($arg{0} != '-' || ($arg{1} == '-' && !$long_options)) {
+ if ($arg{0} != '-' || (strlen($arg) > 1 && $arg{1} == '-' && !$long_options)) {
$non_opts[] = $arg;
- } else if ($arg{1} == '-') {
+ } else if (strlen($arg) > 1 && $arg{1} == '-') {
$error = Console_Getopt::_parseLongOption(substr($arg, 2), $long_options, $opts, $args);
if (PEAR::isError($error))
return $error;