From 313c4a121ae1ff9a1ed294901c2f42370b78a9e4 Mon Sep 17 00:00:00 2001 From: Skylot <118523+skylot@users.noreply.github.com> Date: Fri, 1 Nov 2024 16:33:28 +0000 Subject: [PATCH] fix: improve negation condition checks for switch over string (#2333) --- .../core/dex/visitors/regions/SwitchOverStringVisitor.java | 3 +++ 1 file changed, 3 insertions(+) diff --git a/jadx-core/src/main/java/jadx/core/dex/visitors/regions/SwitchOverStringVisitor.java b/jadx-core/src/main/java/jadx/core/dex/visitors/regions/SwitchOverStringVisitor.java index 83eab68c1..bb5dbbcd3 100644 --- a/jadx-core/src/main/java/jadx/core/dex/visitors/regions/SwitchOverStringVisitor.java +++ b/jadx-core/src/main/java/jadx/core/dex/visitors/regions/SwitchOverStringVisitor.java @@ -318,6 +318,9 @@ public class SwitchOverStringVisitor extends AbstractVisitor implements IRegionI if (ifInsn.getOp() == IfOp.NE && ifInsn.getArg(1).isTrue()) { neg = true; } + if (ifInsn.getOp() == IfOp.EQ && ifInsn.getArg(1).isFalse()) { + neg = true; + } if (str != null) { switchData.getToRemove().add(ifInsn); switchData.getToRemove().addAll(ifRegion.getConditionBlocks());