Embed: mews: prevent javascript error "Cannot read properties of undefined (reading 'add')"

This commit is contained in:
Cat 2021-11-29 10:35:58 +01:00 committed by Thulinma
parent 15ff0dcb9f
commit 48260e6bc5
4 changed files with 7 additions and 2 deletions

File diff suppressed because one or more lines are too long

File diff suppressed because one or more lines are too long

View file

@ -1133,12 +1133,15 @@ function MistVideo(streamName,options) {
//set listeners for player reporting
MistUtil.event.addListener(video,"waiting",function(){
if (!MistVideo || !MistVideo.reporting) { return; }
MistVideo.reporting.stats.add("nWaiting");
});
MistUtil.event.addListener(video,"stalled",function(){
if (!MistVideo || !MistVideo.reporting) { return; }
MistVideo.reporting.stats.add("nStalled");
});
MistUtil.event.addListener(MistVideo.options.target,"error",function(e){
if (!MistVideo || !MistVideo.reporting) { return; }
MistVideo.reporting.stats.add("nError");
MistVideo.reporting.stats.set("lastError",e.message);
},video); //remove event listener when the player is removed

View file

@ -839,6 +839,7 @@ p.prototype.build = function (MistVideo,callback) {
if (responseType) {
var starttime = new Date().getTime();
function onResponse() {
if (!player.ws || !player.ws.serverDelay) { return; }
player.ws.serverDelay.add(new Date().getTime() - starttime);
player.ws.removeListener(responseType,onResponse);
}
@ -896,6 +897,7 @@ p.prototype.build = function (MistVideo,callback) {
return;
}
if (player.ws.readyState >= player.ws.CLOSING) {
if (MistVideo.destroyed) { return; }
//throw "WebSocket has been closed already.";
MistVideo.log("MP4 over WS: reopening websocket");
player.wsconnect().then(function(){