mirror of
https://git.huckle.dev/Huckles-Minecraft-Archive/jpexs-decompiler.git
synced 2026-06-24 07:17:47 +00:00
interrupt thread in finalProcess
This commit is contained in:
@@ -783,7 +783,7 @@ public class AVM2Graph extends Graph {
|
||||
}
|
||||
|
||||
@Override
|
||||
protected void finalProcess(List<GraphTargetItem> list, int level, FinalProcessLocalData localData) {
|
||||
protected void finalProcess(List<GraphTargetItem> list, int level, FinalProcessLocalData localData) throws InterruptedException {
|
||||
|
||||
if (level == 0) {
|
||||
if (!list.isEmpty()) {
|
||||
|
||||
@@ -94,7 +94,7 @@ public class ActionGraph extends Graph {
|
||||
}
|
||||
|
||||
@Override
|
||||
protected void finalProcess(List<GraphTargetItem> list, int level, FinalProcessLocalData localData) {
|
||||
protected void finalProcess(List<GraphTargetItem> list, int level, FinalProcessLocalData localData) throws InterruptedException {
|
||||
List<GraphTargetItem> ret = Action.checkClass(list);
|
||||
if (ret != list) {
|
||||
list.clear();
|
||||
|
||||
@@ -454,7 +454,7 @@ public class Graph {
|
||||
public void finalProcessStack(TranslateStack stack, List<GraphTargetItem> output) {
|
||||
}
|
||||
|
||||
private void finalProcessAll(List<GraphTargetItem> list, int level, FinalProcessLocalData localData) {
|
||||
private void finalProcessAll(List<GraphTargetItem> list, int level, FinalProcessLocalData localData) throws InterruptedException {
|
||||
finalProcess(list, level, localData);
|
||||
for (GraphTargetItem item : list) {
|
||||
if (item instanceof Block) {
|
||||
@@ -522,11 +522,14 @@ public class Graph {
|
||||
}
|
||||
}
|
||||
|
||||
protected void finalProcess(List<GraphTargetItem> list, int level, FinalProcessLocalData localData) {
|
||||
protected void finalProcess(List<GraphTargetItem> list, int level, FinalProcessLocalData localData) throws InterruptedException {
|
||||
|
||||
//For detection based on debug line information
|
||||
Set<Integer> removeFromList = new HashSet<>();
|
||||
for (int i = 0; i < list.size(); i++) {
|
||||
if (Thread.currentThread().isInterrupted()) {
|
||||
throw new InterruptedException();
|
||||
}
|
||||
|
||||
if (list.get(i) instanceof ForItem) {
|
||||
ForItem fori = (ForItem) list.get(i);
|
||||
|
||||
Reference in New Issue
Block a user