You are viewing a plain text version of this content. The canonical link for it is here.
Posted to issues@commons.apache.org by "Emmanuel Bourg (JIRA)" <ji...@apache.org> on 2014/04/24 11:13:16 UTC

[jira] [Updated] (BCEL-115) Deleting all instructions of a list shows wrong behaviour

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

Emmanuel Bourg updated BCEL-115:
--------------------------------

             Priority: Major
          Environment:     (was: Operating System: other
Platform: Other)
    Affects Version/s:     (was: unspecified)
        Fix Version/s: 6.0
             Priority:   (was: P2)
             Severity:   (was: normal)

> Deleting all instructions of a list shows wrong behaviour
> ---------------------------------------------------------
>
>                 Key: BCEL-115
>                 URL: https://issues.apache.org/jira/browse/BCEL-115
>             Project: Commons BCEL
>          Issue Type: Bug
>          Components: Main
>            Reporter: Markus Gaisbauer
>            Assignee: Apache Commons Developers
>             Fix For: 6.0
>
>
> Deleting all instructions (i.e. everything from start to end) in a list shows 
> the following behaviour:
>  The length of the list is not 0 afterwards.
>  Only the handle of the first instruction is disposed.
> To fix the problem, apply the following patch:
> Index: InstructionList.java
> ===================================================================
> --- InstructionList.java	(revision 592025)
> +++ InstructionList.java	(working copy)
> @@ -677,8 +677,9 @@
>      private void remove( InstructionHandle prev, InstructionHandle next )
>              throws TargetLostException {
>          InstructionHandle first, last; // First and last deleted instruction
> -        if ((prev == null) && (next == null)) { // singleton list
> -            first = last = start;
> +        if ((prev == null) && (next == null)) { 
> +            first = start;
> +			last = end;
>              start = end = null;
>          } else {
>              if (prev == null) { // At start of list



--
This message was sent by Atlassian JIRA
(v6.2#6252)