mirror of
https://gitflic.ru/project/openide/openide.git
synced 2026-09-27 10:03:11 +07:00
simplify fix "Avoid memory leak in case: myDone executed but myRejected still keep doWhenRejected listeners (and vice versa)"
This commit is contained in:
@@ -63,6 +63,7 @@ public class ActionCallback implements Disposable {
|
||||
|
||||
public void setDone() {
|
||||
if (myDone.setExecuted()) {
|
||||
myRejected.clear();
|
||||
Disposer.dispose(this);
|
||||
}
|
||||
}
|
||||
@@ -81,6 +82,7 @@ public class ActionCallback implements Disposable {
|
||||
|
||||
public void setRejected() {
|
||||
if (myRejected.setExecuted()) {
|
||||
myDone.clear();
|
||||
Disposer.dispose(this);
|
||||
}
|
||||
}
|
||||
@@ -190,9 +192,6 @@ public class ActionCallback implements Disposable {
|
||||
|
||||
@Override
|
||||
public void dispose() {
|
||||
// avoid memory leak in case: myDone executed but myRejected still keep doWhenRejected listeners (and vice versa)
|
||||
myDone.clear();
|
||||
myRejected.clear();
|
||||
}
|
||||
|
||||
@NotNull
|
||||
|
||||
@@ -100,6 +100,9 @@ class ExecutionCallback {
|
||||
toRun.run();
|
||||
}
|
||||
|
||||
/**
|
||||
* Avoid memory leak in case: myDone executed but myRejected still keep doWhenRejected listeners (and vice versa)
|
||||
*/
|
||||
synchronized void clear() {
|
||||
myRunnables = null;
|
||||
}
|
||||
|
||||
Reference in New Issue
Block a user