mirror of
https://git.axenov.dev/mirrors/cursor-free-vip.git
synced 2026-01-21 05:27:27 +00:00
Big Change Update
This commit is contained in:
52
uBlock0.chromium/js/is-webrtc-supported.js
Normal file
52
uBlock0.chromium/js/is-webrtc-supported.js
Normal file
@@ -0,0 +1,52 @@
|
||||
/*******************************************************************************
|
||||
|
||||
uBlock Origin - a comprehensive, efficient content blocker
|
||||
Copyright (C) 2015 Raymond Hill
|
||||
|
||||
This program is free software: you can redistribute it and/or modify
|
||||
it under the terms of the GNU General Public License as published by
|
||||
the Free Software Foundation, either version 3 of the License, or
|
||||
(at your option) any later version.
|
||||
|
||||
This program is distributed in the hope that it will be useful,
|
||||
but WITHOUT ANY WARRANTY; without even the implied warranty of
|
||||
MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
|
||||
GNU General Public License for more details.
|
||||
|
||||
You should have received a copy of the GNU General Public License
|
||||
along with this program. If not, see {http://www.gnu.org/licenses/}.
|
||||
|
||||
Home: https://github.com/gorhill/uBlock
|
||||
*/
|
||||
|
||||
// https://github.com/gorhill/uBlock/issues/533#issuecomment-164292868
|
||||
// If WebRTC is supported, there won't be an exception if we
|
||||
// try to instantiate a peer connection object.
|
||||
|
||||
// https://github.com/gorhill/uBlock/issues/533#issuecomment-168097594
|
||||
// Because Chromium leaks WebRTC connections after they have been closed
|
||||
// and forgotten, we need to test for WebRTC support inside an iframe, this
|
||||
// way the closed and forgottetn WebRTC connections are properly garbage
|
||||
// collected.
|
||||
|
||||
(function() {
|
||||
'use strict';
|
||||
|
||||
var pc = null;
|
||||
try {
|
||||
var PC = self.RTCPeerConnection || self.webkitRTCPeerConnection;
|
||||
if ( PC ) {
|
||||
pc = new PC(null);
|
||||
}
|
||||
} catch (ex) {
|
||||
console.error(ex);
|
||||
}
|
||||
if ( pc !== null ) {
|
||||
pc.close();
|
||||
}
|
||||
|
||||
window.top.postMessage(
|
||||
pc !== null ? 'webRTCSupported' : 'webRTCNotSupported',
|
||||
window.location.origin
|
||||
);
|
||||
})();
|
||||
Reference in New Issue
Block a user