InsnListIterator can't get previous entry after exec "remove()"
org.objectweb.asm.tree.InsnList.InsnListIterator.remove() has problem.
This method call org.objectweb.asm.tree.InsnList.remove(prev), and set previous entry.
But org.objectweb.asm.tree.InsnList.remove(prev) remove prev's previous entry.
So previous entry becomes null.
I have solution. But I don't know how to send pull request. Sorry.
I paste my idea in this post.
Current source(org.objectweb.asm.tree.InsnList.InsnListIterator.remove())
public void remove() {
InsnList.this.remove(prev);
prev = prev.prev;
}
My idea(org.objectweb.asm.tree.InsnList.InsnListIterator.remove())
public void remove() {
prev = prev.prev;
InsnList.this.remove(prev);
}
This code has problem?
If not, I hope to merge it.
Thanks.