AS3 debugger start halt fix

AS2 debugger - offsets fix, functions fix
This commit is contained in:
Jindra Petřík
2015-12-03 20:17:59 +01:00
parent 367d90c00a
commit 6ea614fa54
5 changed files with 69 additions and 22 deletions

View File

@@ -1099,7 +1099,7 @@ public final class SWF implements SWFContainerItem, Timelined {
}
}
getASMs(true); // Add scriptNames to ASMs
getASMs(true); // Add scriptNames to ASMs
}
@Override

View File

@@ -974,7 +974,17 @@ public abstract class Action implements GraphSourceItem {
ip++;
continue;
}
if (stack.isEmpty()) {
//FunctionActionItem after DefineFunction(/2) are left on the stack. For linestart offsets we consider this kind of stack empty.
boolean isStackEmpty = true;
for (int i = 0; i < stack.size(); i++) {
if ((!(stack.get(i) instanceof FunctionActionItem))) {
isStackEmpty = false;
break;
}
}
if (isStackEmpty) {
localData.lineStartAction = action;
fi.setVal(action);
}

View File

@@ -30,7 +30,7 @@ import java.util.List;
public class TraceActionItem extends ActionItem {
public TraceActionItem(GraphSourceItem instruction, GraphSourceItem lineStartIns, GraphTargetItem value) {
super(instruction, lineStartIns, PRECEDENCE_PRIMARY, value);
super(instruction, lineStartIns, PRECEDENCE_PRIMARY, value);
}
@Override