DO NOT REPLY [Bug 45440] New: Incorrect size calculation in InstructionFinder
[email protected] Sun, 20 Jul 2008 08:48:52 -0700 (PDT)
| Newsgroups | gmane.comp.jakarta.bcel.devel |
|---|---|
| Message-ID | <[email protected]/bugzilla/> |
https://issues.apache.org/bugzilla/show_bug.cgi?id=45440
Summary: Incorrect size calculation in InstructionFinder
Product: BCEL
Version: 5.2
Platform: PC
OS/Version: Windows XP
Status: NEW
Severity: normal
Priority: P2
Component: Main
AssignedTo: [email protected]
ReportedBy: [email protected]
In InstructionFinder class, line 229 size of the matched pattern is calculated
as
int lenExpr = (endExpr - startExpr) + 1;
this is incorrect as endExpr is always given as one past the last index and
this function causes the iterator being returned to always have one more
instruction then requested. Also this can cause a crash if the pattern
requested is at the end of a search list as index goes out of bounds.
suggested fix (I have it working locally with no problems):
int lenExpr = (endExpr - startExpr);
--
Configure bugmail: https://issues.apache.org/bugzilla/userprefs.cgi?tab=email
------- You are receiving this mail because: -------
You are the assignee for the bug.