Skip to content

Commit

Permalink
fix unload
Browse files Browse the repository at this point in the history
  • Loading branch information
isayan committed Jul 13, 2021
1 parent 3a028c5 commit 71cd92b
Show file tree
Hide file tree
Showing 13 changed files with 41 additions and 22 deletions.
4 changes: 2 additions & 2 deletions Readme-ja.md
Original file line number Diff line number Diff line change
Expand Up @@ -30,8 +30,8 @@ gradlew release
* v2020以上 (http://www.portswigger.net/burp/)

### 開発環境
* NetBean 12.2 (https://netbeans.apache.org/)
* Gradle 6.8.1 (https://gradle.org/)
* NetBean 12.4 (https://netbeans.apache.org/)
* Gradle 7.0.2 (https://gradle.org/)
* asciidoc (http://asciidoc.org/)

## 必須ライブラリ
Expand Down
4 changes: 2 additions & 2 deletions Readme.md
Original file line number Diff line number Diff line change
Expand Up @@ -30,8 +30,8 @@ gradlew release
* v2020 or higher (http://www.portswigger.net/burp/)

### Development environment
* NetBean 12.2 (https://netbeans.apache.org/)
* Gradle 6.8.1 (https://gradle.org/)
* NetBean 12.4 (https://netbeans.apache.org/)
* Gradle 7.0.2 (https://gradle.org/)
* asciidoc (http://asciidoc.org/)

## Required library
Expand Down
5 changes: 3 additions & 2 deletions build.gradle
Original file line number Diff line number Diff line change
Expand Up @@ -20,7 +20,7 @@ targetCompatibility = '11' // -target
mainClassName = 'yagura.view.MainFrame'

repositories {
jcenter()
mavenCentral()
}

tasks.withType(JavaCompile) {
Expand Down Expand Up @@ -97,7 +97,8 @@ dependencies {
implementation 'commons-codec:commons-codec:1.15'
// https://mvnrepository.com/artifact/com.fifesoft/rsyntaxtextarea
implementation 'com.fifesoft:rsyntaxtextarea:3.1.3'
// https://mvnrepository.com/artifact/org.jsoup/jsoup
// https://mvnrepository.com/artifact/com.squareup.okhttp
implementation 'com.squareup.okhttp3:okhttp:3.14.9'

implementation 'org.jsoup:jsoup:1.13.1'
// Unit Test
Expand Down
2 changes: 1 addition & 1 deletion gradle.properties
Original file line number Diff line number Diff line change
@@ -1,3 +1,3 @@
netbeans.org-netbeans-modules-javascript2-requirejs.enabled=true
release_version_major=2.2
release_version_minor=6.0
release_version_minor=7.0
Binary file not shown.
Binary file modified release/YaguraExtender-v2.2.jar
Binary file not shown.
2 changes: 0 additions & 2 deletions src/main/java/aspx/viewstate/ViewStateParser.java
Original file line number Diff line number Diff line change
Expand Up @@ -13,8 +13,6 @@
import java.util.ArrayList;
import java.util.Base64;
import java.util.logging.Logger;
import java.util.regex.Matcher;
import java.util.regex.Pattern;

/**
* Base Code
Expand Down
10 changes: 2 additions & 8 deletions src/main/java/burp/BurpExtender.java
Original file line number Diff line number Diff line change
Expand Up @@ -72,7 +72,7 @@
* @author isayan
*/
public class BurpExtender extends BurpExtenderImpl
implements IHttpListener, IProxyListener, IExtensionStateListener {
implements IHttpListener, IProxyListener {
private final static Logger logger = Logger.getLogger(BurpExtender.class.getName());


Expand Down Expand Up @@ -224,9 +224,9 @@ public void uncaughtException(Thread t, Throwable ex) {

callbacks.registerHttpListener(this);
callbacks.registerProxyListener(this);
callbacks.registerExtensionStateListener(this);
SwingUtilities.invokeLater(() -> {
callbacks.addSuiteTab(this.tabbetOption);
callbacks.registerExtensionStateListener(this.tabbetOption);
setSendToMenu(new SendToMenu(callbacks, this.option.getSendToProperty()));
callbacks.registerContextMenuFactory(this.getSendToMenu());
});
Expand All @@ -236,12 +236,6 @@ public void uncaughtException(Thread t, Throwable ex) {
this.registerView();
}

@Override
public void extensionUnloaded() {
System.gc();
// DefaultKeyboardFocusManager.getCurrentKeyboardFocusManager().removeKeyEventPostProcessor(dispatcher);
}

public void registerView() {
IBurpExtenderCallbacks cb = getCallbacks();
cb.registerMessageEditorTabFactory(this.requestRawTab);
Expand Down
2 changes: 1 addition & 1 deletion src/main/java/extend/util/external/ThemeUI.java
Original file line number Diff line number Diff line change
@@ -1,11 +1,11 @@
package extend.util.external;

import java.awt.Color;
import javax.swing.SwingUtilities;
import javax.swing.UIManager;
import org.fife.ui.rsyntaxtextarea.RSyntaxTextArea;
import org.fife.ui.rsyntaxtextarea.RSyntaxUtilities;
import org.fife.ui.rtextarea.Gutter;
import yagura.model.SendToMenu;

/**
*
Expand Down
8 changes: 7 additions & 1 deletion src/main/java/yagura/view/JTransCoderTab.java
Original file line number Diff line number Diff line change
@@ -1,5 +1,6 @@
package yagura.view;

import burp.IExtensionStateListener;
import burp.ITab;
import extend.util.external.TransUtil;
import java.awt.BorderLayout;
Expand Down Expand Up @@ -63,7 +64,7 @@
*
* @author isayan
*/
public class JTransCoderTab extends javax.swing.JPanel implements ITab {
public class JTransCoderTab extends javax.swing.JPanel implements ITab, IExtensionStateListener {

private final static Logger logger = Logger.getLogger(JTransCoderTab.class.getName());

Expand Down Expand Up @@ -3626,4 +3627,9 @@ public void setProperty(JTransCoderProperty transcoderProp) {
chkViewLineWrapActionPerformed(null);
}

@Override
public void extensionUnloaded() {
UIManager.removePropertyChangeListener(listener);
}

}
10 changes: 9 additions & 1 deletion src/main/java/yagura/view/MessageViewTab.java
Original file line number Diff line number Diff line change
Expand Up @@ -2,20 +2,22 @@

import burp.IHttpRequestResponse;
import burp.BurpExtender;
import burp.IExtensionStateListener;
import yagura.model.*;
import java.awt.Font;
import java.awt.event.MouseAdapter;
import java.awt.event.MouseEvent;
import java.util.EnumSet;
import java.util.logging.Level;
import java.util.logging.Logger;
import javax.swing.UIManager;
import yagura.model.UniversalViewProperty.UniversalView;

/**
*
* @author isayan
*/
public class MessageViewTab extends javax.swing.JPanel implements SendToMessage {
public class MessageViewTab extends javax.swing.JPanel implements SendToMessage, IExtensionStateListener {
private final static Logger logger = Logger.getLogger(MessageViewTab.class.getName());

/**
Expand Down Expand Up @@ -283,5 +285,11 @@ public void setResponseLineWrap(boolean lineWrap) {
this.tabResponseRawView.setLineWrap(lineWrap);
}

@Override
public void extensionUnloaded() {
this.tabRequestRawView.extensionUnloaded();
this.tabResponseRawView.extensionUnloaded();
}


}
8 changes: 7 additions & 1 deletion src/main/java/yagura/view/RawViewTab.java
Original file line number Diff line number Diff line change
@@ -1,6 +1,7 @@
package yagura.view;

import burp.BurpExtender;
import burp.IExtensionStateListener;
import burp.IMessageEditorController;
import burp.IMessageEditorTab;
import extend.util.external.ThemeUI;
Expand Down Expand Up @@ -36,7 +37,7 @@
*
* @author isayan
*/
public class RawViewTab extends javax.swing.JPanel implements IMessageEditorTab {
public class RawViewTab extends javax.swing.JPanel implements IMessageEditorTab, IExtensionStateListener {
private final static Logger logger = Logger.getLogger(RawViewTab.class.getName());

final PropertyChangeListener listener = new PropertyChangeListener() {
Expand Down Expand Up @@ -365,4 +366,9 @@ public void setLineWrap(boolean lineWrap) {
this.txtURaw.setLineWrap(lineWrap);
}

@Override
public void extensionUnloaded() {
UIManager.removePropertyChangeListener(listener);
}

}
8 changes: 7 additions & 1 deletion src/main/java/yagura/view/TabbetOption.java
Original file line number Diff line number Diff line change
@@ -1,5 +1,6 @@
package yagura.view;

import burp.IExtensionStateListener;
import burp.ITab;
import extension.helpers.BurpUtil;
import java.awt.Component;
Expand All @@ -19,7 +20,7 @@
*
* @author isayan
*/
public class TabbetOption extends javax.swing.JTabbedPane implements IOptionProperty, ITab, PropertyChangeListener {
public class TabbetOption extends javax.swing.JTabbedPane implements IOptionProperty, ITab, IExtensionStateListener, PropertyChangeListener {

public TabbetOption() {
super();
Expand Down Expand Up @@ -221,4 +222,9 @@ public byte[] receiveFromJTransCoder() {
return this.tabJTransCoder.receiveFromJTransCoder();
}

@Override
public void extensionUnloaded() {
this.tabJTransCoder.extensionUnloaded();
}

}

0 comments on commit 71cd92b

Please sign in to comment.