From cc413be4461ee58c6ada8828b61b22a403d5d65d Mon Sep 17 00:00:00 2001 From: David Baker Date: Fri, 29 Aug 2014 13:28:04 +0100 Subject: [PATCH] Don't break if the call ends before it connects --- webclient/components/matrix/matrix-call.js | 32 ++++++++++++++-------- 1 file changed, 20 insertions(+), 12 deletions(-) diff --git a/webclient/components/matrix/matrix-call.js b/webclient/components/matrix/matrix-call.js index b66c914d7..45d00ee79 100644 --- a/webclient/components/matrix/matrix-call.js +++ b/webclient/components/matrix/matrix-call.js @@ -76,12 +76,16 @@ angular.module('MatrixCall', []) MatrixCall.prototype.hangup = function() { console.trace("Ending call "+this.call_id); - forAllTracksOnStream(this.localAVStream, function(t) { - t.stop(); - }); - forAllTracksOnStream(this.remoteAVStream, function(t) { - t.stop(); - }); + if (this.localAVStream) { + forAllTracksOnStream(this.localAVStream, function(t) { + t.stop(); + }); + } + if (this.remoteAVStream) { + forAllTracksOnStream(this.remoteAVStream, function(t) { + t.stop(); + }); + } var content = { version: 0, @@ -246,12 +250,16 @@ angular.module('MatrixCall', []) MatrixCall.prototype.onHangupReceived = function() { this.state = 'ended'; - forAllTracksOnStream(this.localAVStream, function(t) { - t.stop(); - }); - forAllTracksOnStream(this.remoteAVStream, function(t) { - t.stop(); - }); + if (this.localAVStream) { + forAllTracksOnStream(this.localAVStream, function(t) { + t.stop(); + }); + } + if (this.remoteAVStream) { + forAllTracksOnStream(this.remoteAVStream, function(t) { + t.stop(); + }); + } this.onHangup(); };