Skip to content

Commit b55536b

Browse files
committed
Fix disposable leak
1 parent 5be804b commit b55536b

File tree

1 file changed

+3
-1
lines changed

1 file changed

+3
-1
lines changed

lib/src/main/java/ua/naiksoftware/stomp/client/StompClient.java

Lines changed: 3 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -34,6 +34,7 @@ public class StompClient {
3434
public static final String DEFAULT_ACK = "auto";
3535

3636
private Disposable mMessagesDisposable;
37+
private Disposable mLifecycleDisposable;
3738
private Map<String, Set<FlowableEmitter<? super StompMessage>>> mEmitters = new ConcurrentHashMap<>();
3839
private List<ConnectableFlowable<Void>> mWaitConnectionFlowables;
3940
private final ConnectionProvider mConnectionProvider;
@@ -74,7 +75,7 @@ public void connect(List<StompHeader> _headers) {
7475
public void connect(List<StompHeader> _headers, boolean reconnect) {
7576
if (reconnect) disconnect();
7677
if (mConnected) return;
77-
mConnectionProvider.getLifecycleReceiver()
78+
mLifecycleDisposable = mConnectionProvider.getLifecycleReceiver()
7879
.subscribe(lifecycleEvent -> {
7980
switch (lifecycleEvent.getType()) {
8081
case OPENED:
@@ -156,6 +157,7 @@ public Flowable<LifecycleEvent> lifecycle() {
156157

157158
public void disconnect() {
158159
if (mMessagesDisposable != null) mMessagesDisposable.dispose();
160+
if (mLifecycleDisposable != null) mLifecycleDisposable.dispose();
159161
mConnected = false;
160162
}
161163

0 commit comments

Comments
 (0)