Katherine Hough created BCEL-368:
------------------------------------
Summary: java.lang.StackOverflowError in Select#toString
Key: BCEL-368
URL: https://issues.apache.org/jira/browse/BCEL-368
Project: Commons BCEL
Issue Type: Bug
Affects Versions: 6.7.0, 6.8.0
Reporter: Katherine Hough
Attachments: Test.class
Select#toString recurses infinitely when there is a self-reference in targets.
Input: See attached file.
Output:
{code:java}
Apache Commons BCEL
https://commons.apache.org/bcel
Now verifying: Test
Pass 1:
VERIFIED_OK
Passed verification.
Pass 2:
VERIFIED_OK
Passed verification.
Pass 3a, method number 0 ['public static void s()']:
VERIFIED_OK
Passed verification.
Exception in thread "main" java.lang.StackOverflowError
at
java.base/java.lang.AbstractStringBuilder.append(AbstractStringBuilder.java:828)
at java.base/java.lang.StringBuilder.append(StringBuilder.java:253)
at org.apache.bcel.generic.Instruction.toString(Instruction.java:585)
at
org.apache.bcel.generic.BranchInstruction.toString(BranchInstruction.java:206)
at org.apache.bcel.generic.Select.toString(Select.java:308)
at org.apache.bcel.generic.Instruction.toString(Instruction.java:572)
at org.apache.bcel.generic.Select.toString(Select.java:313)
at org.apache.bcel.generic.Instruction.toString(Instruction.java:572)
at org.apache.bcel.generic.Select.toString(Select.java:313)
at org.apache.bcel.generic.Instruction.toString(Instruction.java:572)
at org.apache.bcel.generic.Select.toString(Select.java:313)
at org.apache.bcel.generic.Instruction.toString(Instruction.java:572)
at org.apache.bcel.generic.Select.toString(Select.java:313)
at org.apache.bcel.generic.Instruction.toString(Instruction.java:572)
at org.apache.bcel.generic.Select.toString(Select.java:313)
at org.apache.bcel.generic.Instruction.toString(Instruction.java:572)
at org.apache.bcel.generic.Select.toString(Select.java:313)
at org.apache.bcel.generic.Instruction.toString(Instruction.java:572)
at org.apache.bcel.generic.Select.toString(Select.java:313)
at org.apache.bcel.generic.Instruction.toString(Instruction.java:572)
at org.apache.bcel.generic.Select.toString(Select.java:313)
at org.apache.bcel.generic.Instruction.toString(Instruction.java:572)
at org.apache.bcel.generic.Select.toString(Select.java:313)
at org.apache.bcel.generic.Instruction.toString(Instruction.java:572)
at org.apache.bcel.generic.Select.toString(Select.java:313)
at org.apache.bcel.generic.Instruction.toString(Instruction.java:572)
at org.apache.bcel.generic.Select.toString(Select.java:313)
at org.apache.bcel.generic.Instruction.toString(Instruction.java:572)
at org.apache.bcel.generic.Select.toString(Select.java:313)
{code}
--
This message was sent by Atlassian Jira
(v8.20.10#820010)