Jean Kruger
Committed by GitHub

Fixes disconnect issue (#656)

If the track has already been disposed, the associated MediaStreamTrack is also disposed, causing unpublishTrack to throw an IllegalStateException ("MediaStreamTrack has been disposed."). To prevent this issue, dispose of the defaultTracks only after the track has been unpublished.
---
"client-sdk-android": patch
---
Fixes disconnect issue
... ...
... ... @@ -1550,10 +1550,6 @@ internal constructor(
* @suppress
*/
fun cleanup() {
defaultAudioTrack?.dispose()
defaultAudioTrack = null
defaultVideoTrack?.dispose()
defaultVideoTrack = null
for (pub in trackPublications.values) {
val track = pub.track
... ... @@ -1569,6 +1565,10 @@ internal constructor(
}
}
}
defaultAudioTrack?.dispose()
defaultAudioTrack = null
defaultVideoTrack?.dispose()
defaultVideoTrack = null
}
/**
... ...