From d98321026dcfe72dbf1a9b379ce2aac8e1039960 Mon Sep 17 00:00:00 2001 From: S-trace Date: Sat, 18 Jan 2020 05:37:00 +0300 Subject: [PATCH] gui: RenameDialog: Unload classes in refreshTabs() before refreshing This should fix possible problems with incorrect refresh for open classes. --- jadx-gui/src/main/java/jadx/gui/ui/RenameDialog.java | 3 +++ 1 file changed, 3 insertions(+) diff --git a/jadx-gui/src/main/java/jadx/gui/ui/RenameDialog.java b/jadx-gui/src/main/java/jadx/gui/ui/RenameDialog.java index 983efa97a..9c15ef7ad 100644 --- a/jadx-gui/src/main/java/jadx/gui/ui/RenameDialog.java +++ b/jadx-gui/src/main/java/jadx/gui/ui/RenameDialog.java @@ -16,6 +16,7 @@ import java.util.Set; import javax.swing.*; +import jadx.gui.utils.CodeUsageInfo; import org.jetbrains.annotations.NotNull; import org.slf4j.Logger; import org.slf4j.LoggerFactory; @@ -237,6 +238,8 @@ public class RenameDialog extends JDialog { JavaClass javaClass = rootClass.getCls(); if (updatedClasses.contains(javaClass) || node.getRootClass().getCls() == javaClass) { LOG.info("Refreshing rootClass " + javaClass.getRawName()); + javaClass.unload(); + javaClass.getClassNode().deepUnload(); rootClass.refresh(); // Update code cache ClassCodeContentPanel codePanel = (ClassCodeContentPanel) contentPanel; CodePanel javaPanel = codePanel.getJavaCodePanel();