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)