mirror of
https://git.huckle.dev/Huckles-Minecraft-Archive/jpexs-decompiler.git
synced 2026-06-05 11:54:54 +00:00
Fixed: #2486 AS ifs with direct breaks (in obfuscated code)
This commit is contained in:
@@ -549,19 +549,26 @@ public class Graph {
|
||||
}
|
||||
|
||||
List<GraphPart> loopContinues = new ArrayList<>();
|
||||
List<GraphPart> loopBreaks = new ArrayList<>();
|
||||
for (Loop l : loops) {
|
||||
if (l.phase == 1) {
|
||||
loopContinues.add(l.loopContinue);
|
||||
if (l.loopPreContinue != null) {
|
||||
loopContinues.add(l.loopPreContinue);
|
||||
}
|
||||
}
|
||||
if (l.loopBreak != null) {
|
||||
loopBreaks.add(l.loopBreak);
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
for (GraphPart p : parts) {
|
||||
if (loopContinues.contains(p)) {
|
||||
break;
|
||||
}
|
||||
if (loopBreaks.contains(p)) {
|
||||
break;
|
||||
}
|
||||
boolean common = true;
|
||||
for (GraphPart q : parts) {
|
||||
if (q == p) {
|
||||
@@ -596,6 +603,9 @@ public class Graph {
|
||||
if (loopContinues.contains(p)) {
|
||||
return null;
|
||||
}
|
||||
if (loopBreaks.contains(p)) {
|
||||
return null;
|
||||
}
|
||||
return p;
|
||||
}
|
||||
}
|
||||
|
||||
Reference in New Issue
Block a user