Commit ffa62e96 authored by wangmingming's avatar wangmingming

7777

parent a3b39a44
if (typeof OffscreenCanvas !== 'function') {
postMessage(false);
}
var canvas = new OffscreenCanvas(0, 0);
var gl = getWebGL(canvas);
if (!gl) {
postMessage(false);
}
onmessage = function (e) {
var segment = e.data.segment;
try {
if (segment === 'a' || segment === 'b') {
var _e$data = e.data, parameters = _e$data.parameters, methods = _e$data.methods;
var result = [];
for (var i = 0; i < parameters.length; i++) {
result.push(gl[methods[0]](parameters[i]));
}
postMessage({segment: segment, result: result});
} else if (segment === 'c' || segment === 'd') {
var _e$data2 = e.data, _parameters = _e$data2.parameters, extensions = _e$data2.extensions,
_methods = _e$data2.methods;
var _result = [];
var ext = false;
for (var _i = 0; _i < extensions.length; _i++) {
ext = ext || gl[_methods[0]](extensions[_i]);
}
if (ext) {
for (var _i2 = 0; _i2 < _parameters.length; _i2++) {
_result.push(gl[_methods[1]](ext[_parameters[_i2]]));
}
} else {
_result = -1;
}
postMessage({segment: segment, result: _result});
} else if (segment === 'e') {
var _e$data3 = e.data, _methods2 = _e$data3.methods, properties = _e$data3.properties;
var _result2 = function (x) {
return x ? x[properties[0]] : false;
}(gl[_methods2[0]]());
postMessage({segment: segment, result: _result2});
} else if (segment === 'f') {
var _e$data4 = e.data, _methods3 = _e$data4.methods, shaderParams = _e$data4.shaderParams,
shaderFloatPrecision = _e$data4.shaderFloatPrecision, shaderIntPrecision = _e$data4.shaderIntPrecision,
shaderProperties = _e$data4.shaderProperties;
var _result3 = [];
if (typeof gl[_methods3[0]] === 'function') {
for (var _i3 = 0; _i3 < shaderParams.length; _i3++) {
for (var j = 0; j < shaderFloatPrecision.length; j++) {
var x = gl[_methods3[0]](shaderParams[_i3], shaderFloatPrecision[j]);
x = x == null ? '' : [x[shaderProperties[0]], x[shaderProperties[1]], x[shaderProperties[2]]].join('');
_result3.push(x);
}
}
for (var _i4 = 0; _i4 < shaderParams.length; _i4++) {
for (var _j = 0; _j < shaderIntPrecision.length; _j++) {
var _x = gl[_methods3[0]](shaderParams[_i4], shaderIntPrecision[_j]);
_x = _x == null ? '' : [_x[shaderProperties[0]], _x[shaderProperties[1]], _x[shaderProperties[2]]].join('');
_result3.push(_x);
}
}
} else {
_result3 = void 0;
}
postMessage({segment: segment, result: _result3});
} else if (segment === 'g') {
var _methods4 = e.data.methods;
var _result4 = gl[_methods4[0]]() || [];
postMessage({segment: segment, result: _result4});
} else if (segment === 'h') {
var _result5 = [];
for (var prop in gl) {
_result5.push(prop);
}
postMessage({segment: segment, result: _result5});
}
} catch (error) {
postMessage(false);
}
};
function getWebGL(c) {
var graphicsLib = null;
try {
graphicsLib = c.getContext('webgl') || c.getContext('experimental-webgl');
} catch (ignored) {
}
return graphicsLib;
}
\ No newline at end of file
...@@ -2046,8 +2046,6 @@ class Worker { ...@@ -2046,8 +2046,6 @@ class Worker {
postMessage() { postMessage() {
console.log('Worker.postMessage', arguments) console.log('Worker.postMessage', arguments)
} }
terminate() { terminate() {
...@@ -2056,7 +2054,7 @@ class Worker { ...@@ -2056,7 +2054,7 @@ class Worker {
} }
// Worker.prototype = proxy(Worker.prototype, 'Worker.proto') // Worker.prototype = proxy(Worker.prototype, 'Worker.proto')
window.Worker = proxy(Worker, 'Worker') window.Worker = proxy(v_saf(Worker), 'Worker')
class OffscreenCanvas { class OffscreenCanvas {
width = 0; width = 0;
...@@ -6236,11 +6234,11 @@ window.imageDatas = []; ...@@ -6236,11 +6234,11 @@ window.imageDatas = [];
}, function (SD) { }, function (SD) {
var Sp = f[RE[SD.v] << 8 | RE[SD.v + 1]]; var Sp = f[RE[SD.v] << 8 | RE[SD.v + 1]];
SD.v += 2; SD.v += 2;
console.log('regexxx', Sp) // console.log('regexxx', Sp)
let res = m(Sp); let res = m(Sp);
if (Sp === '{\\s*\\[\\s*native\\s+code\\s*]\\s*}\\s*$'){ // if (Sp === '{\\s*\\[\\s*native\\s+code\\s*]\\s*}\\s*$'){
res = proxy(res, 'nativeExec') // res = proxy(res, 'nativeExec')
} // }
SD.I[SD.I.length] = res; SD.I[SD.I.length] = res;
}, function (SB) { }, function (SB) {
var Se = RE[SB.v]; var Se = RE[SB.v];
......
This diff is collapsed.
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment