Fix the problem of traveling AST edit scripts.
This commit is contained in:
@@ -199,7 +199,13 @@ public abstract class Parser implements ParserInterface {
|
||||
int bugS = set.getStartPosition();
|
||||
int fixS = set.getFixStartLineNum();
|
||||
|
||||
if (bugS > bugEndPosition || fixS > fixEndPosition) continue;
|
||||
if (set.getActionString().startsWith("INS")) {
|
||||
if (fixS > fixEndPosition) {
|
||||
continue;
|
||||
}
|
||||
} else if (!set.getActionString().startsWith("MOV") && bugS > bugEndPosition) {
|
||||
continue;
|
||||
}
|
||||
|
||||
subSets.addAll(set.getSubActions());
|
||||
String actionStr = set.getActionString();
|
||||
|
||||
+7
-3
@@ -227,11 +227,15 @@ public class FixedViolationHunkParser extends FixedViolationParser {
|
||||
for (HierarchicalActionSet subActionSet : actionSet.getSubActions()) {
|
||||
int bugS = subActionSet.getStartPosition();
|
||||
int fixS = subActionSet.getFixStartLineNum();
|
||||
if (bugS > bugEndPosition || fixS > fixEndPosition) {
|
||||
|
||||
if (subActionSet.getActionString().startsWith("INS")) {
|
||||
if (fixS > fixEndPosition) {
|
||||
continue;
|
||||
}
|
||||
} else if (!subActionSet.getActionString().startsWith("MOV") && bugS > bugEndPosition) {
|
||||
continue;
|
||||
} else {
|
||||
editScripts += getActionString(subActionSet, bugEndPosition, fixEndPosition, startStr + "---");
|
||||
}
|
||||
editScripts += getActionString(subActionSet, bugEndPosition, fixEndPosition, startStr + "---");
|
||||
|
||||
}
|
||||
|
||||
|
||||
Reference in New Issue
Block a user