diff --git a/vaft/vaft-ublock-origin.js b/vaft/vaft-ublock-origin.js index 4360762..32e3740 100644 --- a/vaft/vaft-ublock-origin.js +++ b/vaft/vaft-ublock-origin.js @@ -217,17 +217,21 @@ twitch-videoad.js text/javascript if (url.endsWith('m3u8')) { return new Promise(function(resolve, reject) { var processAfter = async function(response) { - //Here we check the m3u8 for any ads and also try fallback player types if needed. - var responseText = await response.text(); - var weaverText = null; - weaverText = await processM3U8(url, responseText, realFetch, PlayerType2); - if (weaverText.includes(AdSignifier)) { - weaverText = await processM3U8(url, responseText, realFetch, PlayerType3); + if (response.status === 200) { + //Here we check the m3u8 for any ads and also try fallback player types if needed. + var responseText = await response.text(); + var weaverText = null; + weaverText = await processM3U8(url, responseText, realFetch, PlayerType2); + if (weaverText.includes(AdSignifier)) { + weaverText = await processM3U8(url, responseText, realFetch, PlayerType3); + } + if (weaverText.includes(AdSignifier)) { + weaverText = await processM3U8(url, responseText, realFetch, PlayerType4); + } + resolve(new Response(weaverText)); + } else { + resolve(response); } - if (weaverText.includes(AdSignifier)) { - weaverText = await processM3U8(url, responseText, realFetch, PlayerType4); - } - resolve(new Response(weaverText)); }; var send = function() { return realFetch(url, options).then(function(response) { diff --git a/vaft/vaft.user.js b/vaft/vaft.user.js index f904b1f..e5fa07e 100644 --- a/vaft/vaft.user.js +++ b/vaft/vaft.user.js @@ -229,17 +229,21 @@ if (url.endsWith('m3u8')) { return new Promise(function(resolve, reject) { var processAfter = async function(response) { - //Here we check the m3u8 for any ads and also try fallback player types if needed. - var responseText = await response.text(); - var weaverText = null; - weaverText = await processM3U8(url, responseText, realFetch, PlayerType2); - if (weaverText.includes(AdSignifier)) { - weaverText = await processM3U8(url, responseText, realFetch, PlayerType3); + if (response.status === 200) { + //Here we check the m3u8 for any ads and also try fallback player types if needed. + var responseText = await response.text(); + var weaverText = null; + weaverText = await processM3U8(url, responseText, realFetch, PlayerType2); + if (weaverText.includes(AdSignifier)) { + weaverText = await processM3U8(url, responseText, realFetch, PlayerType3); + } + if (weaverText.includes(AdSignifier)) { + weaverText = await processM3U8(url, responseText, realFetch, PlayerType4); + } + resolve(new Response(weaverText)); + } else { + resolve(response); } - if (weaverText.includes(AdSignifier)) { - weaverText = await processM3U8(url, responseText, realFetch, PlayerType4); - } - resolve(new Response(weaverText)); }; var send = function() { return realFetch(url, options).then(function(response) {