Fix memory and event handler leaks in calls #4140
Merged
Add this suggestion to a batch that can be applied as a single commit.
This suggestion is invalid because no changes were made to the code.
Suggestions cannot be applied while the pull request is closed.
Suggestions cannot be applied while viewing a subset of changes.
Only one suggestion per line can be applied in a batch.
Add this suggestion to a batch that can be applied as a single commit.
Applying suggestions on deleted lines is not supported.
You must change the existing code in this line in order to create a valid suggestion.
Outdated suggestions cannot be applied.
This suggestion has been applied or marked resolved.
Suggestions cannot be applied from pending reviews.
Suggestions cannot be applied on multi-line comments.
Suggestions cannot be applied while the pull request is queued to merge.
Suggestion cannot be applied right now. Please check back later.
Although this fixes some memory leaks the more relevant fixes are the event handler leaks, as they caused WebRTC events to be dispatched to objects from previous calls (although this should not have caused performance issues anyway due to the event handlers being pretty lightweight and the Vue components ignoring the models once they were no longer part of the
CallParticipantCollection).There are still some call related leaks, but I do not know yet how to fix them (or if they are actually browser bugs rather than Talk bugs), so something for another pull request.