This is an automated email from the ASF dual-hosted git repository.
ggregory pushed a commit to branch master
in repository https://gitbox.apache.org/repos/asf/commons-cli.git
The following commit(s) were added to refs/heads/master by this push:
new 4723175 Less branching.
4723175 is described below
commit 47231757c0e1c5b201889e8f3607470321b60e48
Author: Gary Gregory <[email protected]>
AuthorDate: Mon Oct 4 13:41:24 2021 -0400
Less branching.
---
.../java/org/apache/commons/cli/CommandLine.java | 6 +-----
src/main/java/org/apache/commons/cli/Option.java | 5 +----
.../java/org/apache/commons/cli/PosixParser.java | 24 +++++++++++-----------
3 files changed, 14 insertions(+), 21 deletions(-)
diff --git a/src/main/java/org/apache/commons/cli/CommandLine.java
b/src/main/java/org/apache/commons/cli/CommandLine.java
index a599c4a..ab79533 100644
--- a/src/main/java/org/apache/commons/cli/CommandLine.java
+++ b/src/main/java/org/apache/commons/cli/CommandLine.java
@@ -454,11 +454,7 @@ public class CommandLine implements Serializable {
private Option resolveOption(String opt) {
opt = Util.stripLeadingHyphens(opt);
for (final Option option : options) {
- if (opt.equals(option.getOpt())) {
- return option;
- }
-
- if (opt.equals(option.getLongOpt())) {
+ if (opt.equals(option.getOpt()) ||
opt.equals(option.getLongOpt())) {
return option;
}
diff --git a/src/main/java/org/apache/commons/cli/Option.java
b/src/main/java/org/apache/commons/cli/Option.java
index 6b10fdb..28859fb 100644
--- a/src/main/java/org/apache/commons/cli/Option.java
+++ b/src/main/java/org/apache/commons/cli/Option.java
@@ -473,10 +473,7 @@ public class Option implements Cloneable, Serializable {
final Option option = (Option) o;
- if (opt != null ? !opt.equals(option.opt) : option.opt != null) {
- return false;
- }
- if (longOpt != null ? !longOpt.equals(option.longOpt) : option.longOpt
!= null) {
+ if ((opt != null ? !opt.equals(option.opt) : option.opt != null) ||
(longOpt != null ? !longOpt.equals(option.longOpt) : option.longOpt != null)) {
return false;
}
diff --git a/src/main/java/org/apache/commons/cli/PosixParser.java
b/src/main/java/org/apache/commons/cli/PosixParser.java
index f4e004f..0197c49 100644
--- a/src/main/java/org/apache/commons/cli/PosixParser.java
+++ b/src/main/java/org/apache/commons/cli/PosixParser.java
@@ -66,20 +66,20 @@ public class PosixParser extends Parser {
for (int i = 1; i < token.length(); i++) {
final String ch = String.valueOf(token.charAt(i));
- if (options.hasOption(ch)) {
- tokens.add("-" + ch);
- currentOption = options.getOption(ch);
-
- if (currentOption.hasArg() && token.length() != i + 1) {
- tokens.add(token.substring(i + 1));
-
- break;
+ if (!options.hasOption(ch)) {
+ if (stopAtNonOption) {
+ processNonOptionToken(token.substring(i), true);
+ } else {
+ tokens.add(token);
}
- } else if (stopAtNonOption) {
- processNonOptionToken(token.substring(i), true);
break;
- } else {
- tokens.add(token);
+ }
+ tokens.add("-" + ch);
+ currentOption = options.getOption(ch);
+
+ if (currentOption.hasArg() && token.length() != i + 1) {
+ tokens.add(token.substring(i + 1));
+
break;
}
}