[ 
https://issues.apache.org/jira/browse/CLI-162?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=12674469#action_12674469
 ] 

Henri Yandell commented on CLI-162:
-----------------------------------


Two of the options appear to be problematic in CLI162.

The first is OPT_PASSWORD. In this the url is longer than the allowed width of 
the screen, so some kind of failure needs to happen - or the url needs to be 
mercilessly chopped. This is the one that goes into an infinite loop due to 
CLI-151. My gut feeling from the code is that CLI-151 didn't introduce this 
bug, but you had to be significantly longer to hit the bug before (ie: 
printTabStop longer than the width).

The second is OPT_PARAM_TYPES_INT + OPT_PARAM_TYPES_NAME, it shows the the 
patch for this ticket contained a bug when the lastPos happened to equal the 
firstPos for completely normal reasons. I'd missed that pos was already set to 
a real value when the loop was begun and not to 0. I'm not sure why both 
options have to be set for this to happen. 

> infinite loop in the wrapping code of HelpFormatter
> ---------------------------------------------------
>
>                 Key: CLI-162
>                 URL: https://issues.apache.org/jira/browse/CLI-162
>             Project: Commons CLI
>          Issue Type: Bug
>          Components: Help formatter
>    Affects Versions: 1.1
>            Reporter: Emmanuel Bourg
>             Fix For: 1.2
>
>
> If there is not enough space to display a word on a single line, 
> HelpFormatter goes into a infinite loops until the JVM crashes with an 
> OutOfMemoryError.
> Test case:
> {code}
> Options options = new Options();
> options.addOption("h", "help", false, "This is a looooong description");
> HelpFormatter formatter = new HelpFormatter();
> formatter.setWidth(20);
> formatter.printHelp("app", options); // hang & crash
> {code}
> An helpful exception indicating the insufficient width would be more 
> appropriate than an OutOfMemoryError.

-- 
This message is automatically generated by JIRA.
-
You can reply to this email to add a comment to the issue online.

Reply via email to