From 43d02af81b596e26ed5a01f5d0734c02c2d8c07f Mon Sep 17 00:00:00 2001 From: Andrea Aime Date: Sat, 28 Jan 2006 10:10:55 +0000 Subject: [PATCH] Added a check for option length, to avoid ArrayOutOfBoundExceptions if the users specifies an option without its argument. Special treatment is reserved to "-hide", which accepts both 0 or 1 parameters. --- src/gr/spinellis/umlgraph/doclet/Options.java | 5 +++++ src/org/umlgraph/doclet/Options.java | 5 +++++ 2 files changed, 10 insertions(+) diff --git a/src/gr/spinellis/umlgraph/doclet/Options.java b/src/gr/spinellis/umlgraph/doclet/Options.java index f608efc..ca93dce 100644 --- a/src/gr/spinellis/umlgraph/doclet/Options.java +++ b/src/gr/spinellis/umlgraph/doclet/Options.java @@ -180,6 +180,11 @@ class Options implements Cloneable, OptionProvider { /** Set the options based on a lingle option and its arguments */ void setOption(String[] opt) { + if(!opt[0].equals("-hide") && optionLength(opt[0]) > opt.length) { + System.err.println("Skipping option '" + opt[0] + "', missing argument"); + return; + } + if(opt[0].equals("-qualify")) { showQualified = true; } else if (opt[0].equals("-!qualify")) { diff --git a/src/org/umlgraph/doclet/Options.java b/src/org/umlgraph/doclet/Options.java index f608efc..ca93dce 100644 --- a/src/org/umlgraph/doclet/Options.java +++ b/src/org/umlgraph/doclet/Options.java @@ -180,6 +180,11 @@ class Options implements Cloneable, OptionProvider { /** Set the options based on a lingle option and its arguments */ void setOption(String[] opt) { + if(!opt[0].equals("-hide") && optionLength(opt[0]) > opt.length) { + System.err.println("Skipping option '" + opt[0] + "', missing argument"); + return; + } + if(opt[0].equals("-qualify")) { showQualified = true; } else if (opt[0].equals("-!qualify")) {