You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@netbeans.apache.org by "Peter Nabbefeld (JIRA)" <ji...@apache.org> on 2018/06/14 08:00:08 UTC

[jira] [Updated] (NETBEANS-914) Generated WizardDescriptor.InstantiatingIterator contains suspicious code

     [ https://issues.apache.org/jira/browse/NETBEANS-914?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel ]

Peter Nabbefeld updated NETBEANS-914:
-------------------------------------
    Component/s: apisupport - Project

> Generated WizardDescriptor.InstantiatingIterator contains suspicious code
> -------------------------------------------------------------------------
>
>                 Key: NETBEANS-914
>                 URL: https://issues.apache.org/jira/browse/NETBEANS-914
>             Project: NetBeans
>          Issue Type: Improvement
>          Components: apisupport - Project
>    Affects Versions: 9.0
>         Environment: Linux
>            Reporter: Peter Nabbefeld
>            Priority: Minor
>
> The InstantiatingIterator contains following code:
>             String[] steps = createSteps();
>             for (int i = 0; i < panels.size(); i++) {
>                 Component c = panels.get(i).getComponent();
>                 if (steps[i] == null) {
>                     // Default step name to component name of panel. Mainly
>                     // useful for getting the name of the target chooser to
>                     // appear in the list of steps.
>                     steps[i] = c.getName();
>                 }
> Here, "steps" is used as a zero-based array.
> It uses following method:
> private String[] createSteps() {
>     String[] beforeSteps = (String[])wizard.getProperty("WizardPanel_contentData");
>     assert beforeSteps != null : "This wizard may only be used embedded in the template wizard";
>     String[] res = new String[(beforeSteps.length - 1) + panels.size()];
>     for (int i = 0; i < res.length; i++) {
>         if (i < (beforeSteps.length - 1)) {
>             res[i] = beforeSteps[i];
>         } else {
>             res[i] = panels.get(i - beforeSteps.length + 1).getComponent().getName();
>         }
>     }
>     return res;
> }
> Here, "steps" has a bias-value (the size of beforeSteps - 1), which seems to be zero in most cases, but the different usage may cause errors if bias > 0.
> Probably it should be made clear, what this bias value exactly is, and then it should also be used in the code above, if needed.



--
This message was sent by Atlassian JIRA
(v7.6.3#76005)

---------------------------------------------------------------------
To unsubscribe, e-mail: commits-unsubscribe@netbeans.apache.org
For additional commands, e-mail: commits-help@netbeans.apache.org

For further information about the NetBeans mailing lists, visit:
https://cwiki.apache.org/confluence/display/NETBEANS/Mailing+lists